· 6 years ago · Jul 16, 2019, 01:46 PM
1#### admin.py ####
2
3from django.contrib import admin
4from jalali_date.admin import (
5 ModelAdminJalaliMixin,
6 StackedInlineJalaliMixin,
7 TabularInlineJalaliMixin,
8)
9from .models import Book
10
11# Register your models here.
12
13
14@admin.register(Book)
15class BookModelAmin(ModelAdminJalaliMixin, admin.ModelAdmin):
16 pass
17
18#### settings.py ####
19
20"""
21Django settings for jalali project.
22
23Generated by 'django-admin startproject' using Django 2.2.3.
24
25For more information on this file, see
26https://docs.djangoproject.com/en/2.2/topics/settings/
27
28For the full list of settings and their values, see
29https://docs.djangoproject.com/en/2.2/ref/settings/
30"""
31
32import os
33
34# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
35BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
36
37
38# Quick-start development settings - unsuitable for production
39# See https://docs.djangoproject.com/en/2.2/howto/deployment/checklist/
40
41# SECURITY WARNING: keep the secret key used in production secret!
42SECRET_KEY = "^rz0@eq0dl=hhfxy+wuzwyb^xc3$#k@3hn237gtrs@t48-xndw"
43
44# SECURITY WARNING: don't run with debug turned on in production!
45DEBUG = True
46
47ALLOWED_HOSTS = []
48
49
50# Application definition
51
52INSTALLED_APPS = [
53 "django.contrib.admin",
54 "django.contrib.auth",
55 "django.contrib.contenttypes",
56 "django.contrib.sessions",
57 "django.contrib.messages",
58 "django.contrib.staticfiles",
59 "jalali_date",
60 "jalali_dates",
61]
62
63MIDDLEWARE = [
64 "django.middleware.security.SecurityMiddleware",
65 "django.contrib.sessions.middleware.SessionMiddleware",
66 "django.middleware.common.CommonMiddleware",
67 "django.middleware.csrf.CsrfViewMiddleware",
68 "django.contrib.auth.middleware.AuthenticationMiddleware",
69 "django.contrib.messages.middleware.MessageMiddleware",
70 "django.middleware.clickjacking.XFrameOptionsMiddleware",
71]
72
73ROOT_URLCONF = "jalali.urls"
74
75TEMPLATES = [
76 {
77 "BACKEND": "django.template.backends.django.DjangoTemplates",
78 "DIRS": [],
79 "APP_DIRS": True,
80 "OPTIONS": {
81 "context_processors": [
82 "django.template.context_processors.debug",
83 "django.template.context_processors.request",
84 "django.contrib.auth.context_processors.auth",
85 "django.contrib.messages.context_processors.messages",
86 ]
87 },
88 }
89]
90
91WSGI_APPLICATION = "jalali.wsgi.application"
92
93
94# Database
95# https://docs.djangoproject.com/en/2.2/ref/settings/#databases
96
97DATABASES = {
98 "default": {
99 "ENGINE": "django.db.backends.sqlite3",
100 "NAME": os.path.join(BASE_DIR, "db.sqlite3"),
101 }
102}
103
104
105# Password validation
106# https://docs.djangoproject.com/en/2.2/ref/settings/#auth-password-validators
107
108AUTH_PASSWORD_VALIDATORS = [
109 {
110 "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator"
111 },
112 {"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator"},
113 {"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator"},
114 {"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator"},
115]
116
117
118# Internationalization
119# https://docs.djangoproject.com/en/2.2/topics/i18n/
120
121LANGUAGE_CODE = "en-us"
122
123TIME_ZONE = "UTC"
124
125USE_I18N = True
126
127USE_L10N = True
128
129USE_TZ = True
130
131
132# Static files (CSS, JavaScript, Images)
133# https://docs.djangoproject.com/en/2.2/howto/static-files/
134
135STATIC_URL = "/static/"
136
137JALALI_DATE_DEFAULTS = {
138 "Strftime": {"date": "%y/%m/%d", "datetime": "%H:%M:%S _ %y/%m/%d"},
139 "Static": {
140 "js": [
141 # loading default jQuery
142 "admin/jquery.ui.datepicker.jalali/scripts/jquery-1.10.2.min.js",
143 # loading datepicker
144 "admin/js/django_jalali.min.js",
145 ],
146 "css": {
147 "all": ["admin/jquery.ui.datepicker.jalali/themes/base/jquery-ui.min.css"]
148 },
149 },
150}