base.py 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. """
  2. Django settings for mysite project.
  3. Generated by 'django-admin startproject' using Django 3.0.10.
  4. For more information on this file, see
  5. https://docs.djangoproject.com/en/3.0/topics/settings/
  6. For the full list of settings and their values, see
  7. https://docs.djangoproject.com/en/3.0/ref/settings/
  8. """
  9. # Build paths inside the project like this: os.path.join(BASE_DIR, ...)
  10. import os
  11. from django.utils.translation import gettext_lazy as _
  12. PROJECT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
  13. BASE_DIR = os.path.dirname(PROJECT_DIR)
  14. # Quick-start development settings - unsuitable for production
  15. # See https://docs.djangoproject.com/en/3.0/howto/deployment/checklist/
  16. # Application definition
  17. INSTALLED_APPS = [
  18. # This project
  19. 'website',
  20. # Wagtail CRX (CodeRed Extensions)
  21. 'coderedcms',
  22. 'bootstrap4',
  23. 'modelcluster',
  24. 'taggit',
  25. 'wagtailfontawesome',
  26. 'wagtailcache',
  27. 'wagtailimportexport',
  28. 'wagtailseo',
  29. # Wagtail
  30. 'wagtail.contrib.forms',
  31. 'wagtail.contrib.redirects',
  32. 'wagtail.embeds',
  33. 'wagtail.sites',
  34. 'wagtail.users',
  35. 'wagtail.snippets',
  36. 'wagtail.documents',
  37. 'wagtail.images',
  38. 'wagtail.search',
  39. 'wagtail.core',
  40. 'wagtail.contrib.settings',
  41. 'wagtail.contrib.modeladmin',
  42. 'wagtail.contrib.table_block',
  43. 'wagtail.admin',
  44. # Django
  45. 'django.contrib.admin',
  46. 'django.contrib.auth',
  47. 'django.contrib.contenttypes',
  48. 'django.contrib.sessions',
  49. 'django.contrib.messages',
  50. 'django.contrib.staticfiles',
  51. 'django.contrib.sitemaps',
  52. ]
  53. MIDDLEWARE = [
  54. # Save pages to cache. Must be FIRST.
  55. 'wagtailcache.cache.UpdateCacheMiddleware',
  56. # Common functionality
  57. 'django.contrib.sessions.middleware.SessionMiddleware',
  58. 'django.contrib.messages.middleware.MessageMiddleware',
  59. 'django.middleware.common.CommonMiddleware',
  60. # Security
  61. 'django.middleware.csrf.CsrfViewMiddleware',
  62. 'django.contrib.auth.middleware.AuthenticationMiddleware',
  63. 'django.middleware.clickjacking.XFrameOptionsMiddleware',
  64. 'django.middleware.security.SecurityMiddleware',
  65. # Error reporting. Uncomment this to recieve emails when a 404 is triggered.
  66. # 'django.middleware.common.BrokenLinkEmailsMiddleware',
  67. # CMS functionality
  68. 'wagtail.contrib.redirects.middleware.RedirectMiddleware',
  69. # Fetch from cache. Must be LAST.
  70. 'wagtailcache.cache.FetchFromCacheMiddleware',
  71. ]
  72. ROOT_URLCONF = 'mysite.urls'
  73. TEMPLATES = [
  74. {
  75. 'BACKEND': 'django.template.backends.django.DjangoTemplates',
  76. 'APP_DIRS': True,
  77. 'OPTIONS': {
  78. 'context_processors': [
  79. 'django.template.context_processors.debug',
  80. 'django.template.context_processors.request',
  81. 'django.contrib.auth.context_processors.auth',
  82. 'django.contrib.messages.context_processors.messages',
  83. 'wagtail.contrib.settings.context_processors.settings',
  84. ],
  85. },
  86. },
  87. ]
  88. WSGI_APPLICATION = 'mysite.wsgi.application'
  89. # Database
  90. # https://docs.djangoproject.com/en/3.0/ref/settings/#databases
  91. DATABASES = {
  92. 'default': {
  93. 'ENGINE': 'django.db.backends.sqlite3',
  94. 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
  95. }
  96. }
  97. # Password validation
  98. # https://docs.djangoproject.com/en/3.0/ref/settings/#auth-password-validators
  99. AUTH_PASSWORD_VALIDATORS = [
  100. {
  101. 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
  102. },
  103. {
  104. 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
  105. },
  106. {
  107. 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
  108. },
  109. {
  110. 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
  111. },
  112. ]
  113. # Internationalization
  114. # https://docs.djangoproject.com/en/3.0/topics/i18n/
  115. # To add or change language of the project, modify the list below.
  116. LANGUAGE_CODE = 'en-us'
  117. LANGUAGES = [
  118. ('en-us', _('English'))
  119. ]
  120. TIME_ZONE = 'America/New_York'
  121. USE_I18N = True
  122. USE_L10N = True
  123. USE_TZ = True
  124. # Static files (CSS, JavaScript, Images)
  125. # https://docs.djangoproject.com/en/3.0/howto/static-files/
  126. STATICFILES_FINDERS = [
  127. 'django.contrib.staticfiles.finders.FileSystemFinder',
  128. 'django.contrib.staticfiles.finders.AppDirectoriesFinder',
  129. ]
  130. STATIC_ROOT = os.path.join(BASE_DIR, 'static')
  131. STATIC_URL = '/static/'
  132. MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
  133. MEDIA_URL = '/media/'
  134. # Login
  135. LOGIN_URL = 'wagtailadmin_login'
  136. LOGIN_REDIRECT_URL = 'wagtailadmin_home'
  137. # Wagtail settings
  138. WAGTAIL_SITE_NAME = 'Simple Sweet Desserts Ltd.'
  139. WAGTAIL_ENABLE_UPDATE_CHECK = False
  140. WAGTAILSEARCH_BACKENDS = {
  141. 'default': {
  142. 'BACKEND': 'wagtail.search.backends.database',
  143. }
  144. }
  145. # Base URL to use when referring to full URLs within the Wagtail admin backend -
  146. # e.g. in notification emails. Don't include '/admin' or a trailing slash
  147. BASE_URL = 'http://localhost'
  148. # Bootstrap
  149. BOOTSTRAP4 = {
  150. # set to blank since coderedcms already loads jquery and bootstrap
  151. 'jquery_url': '',
  152. 'base_url': '',
  153. # remove green highlight on inputs
  154. 'success_css_class': ''
  155. }
  156. # Tags
  157. TAGGIT_CASE_INSENSITIVE = True
  158. DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'