Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
nk20
Manage
Activity
Members
Labels
Plan
Issues
32
Issue boards
Milestones
Wiki
Code
Merge requests
6
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
BDE
nk20
Commits
ccfc37d2
Commit
ccfc37d2
authored
4 years ago
by
me5na7qbjqbrp
Browse files
Options
Downloads
Patches
Plain Diff
Reorder base Django settings and read env vars
parent
764eaafb
No related branches found
No related tags found
3 merge requests
!104
Beta
,
!98
Morefront
,
!91
Documents
Pipeline
#8407
passed with warnings with stages
in 5 minutes and 10 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
note_kfet/settings/base.py
+95
-62
95 additions, 62 deletions
note_kfet/settings/base.py
with
95 additions
and
62 deletions
note_kfet/settings/base.py
+
95
−
62
View file @
ccfc37d2
...
...
@@ -2,45 +2,32 @@
# SPDX-License-Identifier: GPL-3.0-or-later
import
os
import
sys
from
django.utils.translation
import
gettext_lazy
as
_
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR
=
os
.
path
.
dirname
(
os
.
path
.
dirname
(
os
.
path
.
dirname
(
os
.
path
.
abspath
(
__file__
))))
PROJECT_DIR
=
os
.
path
.
dirname
(
os
.
path
.
dirname
(
os
.
path
.
realpath
(
__file__
)))
APPS_DIR
=
os
.
path
.
realpath
(
os
.
path
.
join
(
BASE_DIR
,
"
apps
"
))
sys
.
path
.
append
(
APPS_DIR
)
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/2.2/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY
=
'
CHANGE_ME_IN_LOCAL_SETTINGS!
'
SECRET_KEY
=
os
.
getenv
(
'
DJANGO_SECRET_KEY
'
,
'
CHANGE_ME_IN_LOCAL_SETTINGS!
'
)
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG
=
True
ADMINS
=
(
# ('Admin', 'webmaster@example.com'),
)
SITE_ID
=
1
DEBUG
=
os
.
getenv
(
'
DJANGO_DEBUG
'
,
False
)
ALLOWED_HOSTS
=
[]
# Application definition
INSTALLED_APPS
=
[
# Theme overrides Django Admin templates
# 'theme',
# External apps
'
mailer
'
,
'
phonenumber_field
'
,
'
polymorphic
'
,
'
crispy_forms
'
,
'
django_tables2
'
,
# Django contrib
'
django.contrib.admin
'
,
'
django.contrib.admindocs
'
,
...
...
@@ -51,6 +38,7 @@ INSTALLED_APPS = [
'
django.contrib.messages
'
,
'
django.contrib.staticfiles
'
,
'
django.forms
'
,
# API
'
rest_framework
'
,
'
rest_framework.authtoken
'
,
...
...
@@ -67,7 +55,6 @@ INSTALLED_APPS = [
'
treasury
'
,
'
wei
'
,
]
LOGIN_REDIRECT_URL
=
'
/note/transfer/
'
MIDDLEWARE
=
[
'
django.middleware.security.SecurityMiddleware
'
,
...
...
@@ -97,16 +84,28 @@ TEMPLATES = [
'
django.contrib.auth.context_processors.auth
'
,
'
django.contrib.messages.context_processors.messages
'
,
'
django.template.context_processors.request
'
,
# 'django.template.context_processors.media',
],
},
},
]
FORM_RENDERER
=
'
django.forms.renderers.TemplatesSetting
'
WSGI_APPLICATION
=
'
note_kfet.wsgi.application
'
# Database
# https://docs.djangoproject.com/en/2.2/ref/settings/#databases
DATABASES
=
{
'
default
'
:
{
'
ENGINE
'
:
os
.
getenv
(
'
DJANGO_DB_ENGINE
'
,
'
django.db.backends.sqlite3
'
),
'
NAME
'
:
os
.
getenv
(
'
DJANGO_DB_NAME
'
,
os
.
path
.
join
(
BASE_DIR
,
'
db.sqlite3
'
)),
'
USER
'
:
os
.
getenv
(
'
DJANGO_DB_USER
'
,
'
note
'
),
'
HOST
'
:
os
.
getenv
(
'
DJANGO_DB_HOST
'
,
'
localhost
'
),
'
PORT
'
:
os
.
getenv
(
'
DJANGO_DB_PORT
'
,
''
),
# Use default port
}
}
# Password validation
# https://docs.djangoproject.com/en/2.2/ref/settings/#auth-password-validators
...
...
@@ -125,16 +124,71 @@ AUTH_PASSWORD_VALIDATORS = [
},
]
# Use our custom hasher in order to import NK15 passwords
# Internationalization
# https://docs.djangoproject.com/en/2.2/topics/i18n/
LANGUAGE_CODE
=
'
en
'
TIME_ZONE
=
'
Europe/Paris
'
USE_I18N
=
True
USE_L10N
=
True
USE_TZ
=
True
# Limit available languages to this subset
from
django.utils.translation
import
gettext_lazy
as
_
LANGUAGES
=
[
(
'
de
'
,
_
(
'
German
'
)),
(
'
en
'
,
_
(
'
English
'
)),
(
'
fr
'
,
_
(
'
French
'
)),
]
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/
STATIC_URL
=
'
/static/
'
# Add some custom statics from /note_kfet/static
STATICFILES_DIRS
=
[
os
.
path
.
join
(
BASE_DIR
,
'
note_kfet/static
'
),
]
# Collect statics to /static/
# THIS FOLDER SOULD NOT BE IN GIT TREE!!!
STATIC_ROOT
=
os
.
path
.
join
(
BASE_DIR
,
"
static/
"
)
# Add /apps/ directory to Python modules search path
import
sys
sys
.
path
.
append
(
os
.
path
.
realpath
(
os
.
path
.
join
(
BASE_DIR
,
'
apps
'
)))
print
(
BASE_DIR
,
sys
.
path
)
# Use /locale/ for locale files
LOCALE_PATHS
=
[
os
.
path
.
join
(
BASE_DIR
,
'
locale
'
)]
# Use /note_kfet/fixtures for database fixtures
FIXTURE_DIRS
=
[
os
.
path
.
join
(
BASE_DIR
,
'
note_kfet/fixtures
'
)]
# NK15 password hasher for retrocompatibility
# On first login the password will be rehashed with PBKDF2PasswordHasher
PASSWORD_HASHERS
=
[
'
django.contrib.auth.hashers.PBKDF2PasswordHasher
'
,
'
member.hashers.CustomNK15Hasher
'
,
]
# Custom role-based permission system
AUTHENTICATION_BACKENDS
=
(
'
permission.backends.PermissionBackend
'
,
# Custom role-based permission system
'
permission.backends.PermissionBackend
'
,
)
# Use /media/ for user uploaded media (user profile pictures)
MEDIA_ROOT
=
os
.
path
.
join
(
BASE_DIR
,
"
media
"
)
MEDIA_URL
=
'
/media/
'
# Django REST Framework
REST_FRAMEWORK
=
{
'
DEFAULT_PERMISSION_CLASSES
'
:
[
# Control API access with our role-based permission system
...
...
@@ -148,55 +202,34 @@ REST_FRAMEWORK = {
'
PAGE_SIZE
'
:
20
,
}
# Internationalization
# https://docs.djangoproject.com/en/2.2/topics/i18n/
LANGUAGE_CODE
=
'
en
'
LANGUAGES
=
[
(
'
de
'
,
_
(
'
German
'
)),
(
'
en
'
,
_
(
'
English
'
)),
(
'
fr
'
,
_
(
'
French
'
)),
]
TIME_ZONE
=
'
Europe/Paris
'
USE_I18N
=
True
USE_L10N
=
True
# Take control on how widget templates are sourced
# See https://docs.djangoproject.com/en/2.2/ref/forms/renderers/#templatessetting
FORM_RENDERER
=
'
django.forms.renderers.TemplatesSetting
'
USE_TZ
=
True
# After login redirect user to transfer page
LOGIN_REDIRECT_URL
=
'
/note/transfer/
'
LOCALE_PATHS
=
[
os
.
path
.
join
(
BASE_DIR
,
"
locale
"
)]
# Use Crispy Bootstrap4 theme
CRISPY_TEMPLATE_PACK
=
'
bootstrap4
'
FIXTURE_DIRS
=
[
os
.
path
.
join
(
BASE_DIR
,
"
note_kfet/fixtures
"
)]
# Use Django Table2 Bootstrap4 theme
DJANGO_TABLES2_TEMPLATE
=
'
django_tables2/bootstrap4.html
'
#
Static files (CSS, JavaScript, Imag
es
)
# https://docs.djangoproject.com/en/2.2/howto/static-files/
#
Use only one Django Sit
es
SITE_ID
=
1
# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/var/www/example.com/static/"
STATIC_ROOT
=
os
.
path
.
join
(
BASE_DIR
,
"
static/
"
)
# STATICFILES_DIRS = [
# os.path.join(BASE_DIR, 'static')]
STATICFILES_DIRS
=
[]
CRISPY_TEMPLATE_PACK
=
'
bootstrap4
'
DJANGO_TABLES2_TEMPLATE
=
'
django_tables2/bootstrap4.html
'
# URL prefix for static files.
# Example: "http://example.com/static/", "http://static.example.com/"
STATIC_URL
=
'
/static/
'
# When a server error occured, send an email to these addresses
ADMINS
=
(
# ('Admin', 'webmaster@example.com'),
)
# Default regex to validate users aliases
ALIAS_VALIDATOR_REGEX
=
r
''
MEDIA_ROOT
=
os
.
path
.
join
(
BASE_DIR
,
"
media
"
)
MEDIA_URL
=
'
/media/
'
# Profile Picture Settings
# Profile picture cropping
PIC_WIDTH
=
200
PIC_RATIO
=
1
# Custom phone number format
PHONENUMBER_DB_FORMAT
=
'
NATIONAL
'
PHONENUMBER_DEFAULT_REGION
=
'
FR
'
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment