Compare commits
10 Commits
bc16cf828b
...
c0d7fd5139
Author | SHA1 | Date | |
---|---|---|---|
c0d7fd5139 | |||
95775943bb | |||
e04286cbe1 | |||
04dcc4099a | |||
c42357dae0 | |||
4748e8edc0 | |||
d84be38b7a | |||
d2ad003de5 | |||
024f9fe800 | |||
ba7df44eda |
257
.gitignore
vendored
Normal file
257
.gitignore
vendored
Normal file
@ -0,0 +1,257 @@
|
|||||||
|
### PyCharm template
|
||||||
|
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
|
||||||
|
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
|
||||||
|
|
||||||
|
# User-specific stuff
|
||||||
|
.idea/**/workspace.xml
|
||||||
|
.idea/**/tasks.xml
|
||||||
|
.idea/**/usage.statistics.xml
|
||||||
|
.idea/**/dictionaries
|
||||||
|
.idea/**/shelf
|
||||||
|
|
||||||
|
# AWS User-specific
|
||||||
|
.idea/**/aws.xml
|
||||||
|
|
||||||
|
# Generated files
|
||||||
|
.idea/**/contentModel.xml
|
||||||
|
|
||||||
|
# Sensitive or high-churn files
|
||||||
|
.idea/**/dataSources/
|
||||||
|
.idea/**/dataSources.ids
|
||||||
|
.idea/**/dataSources.local.xml
|
||||||
|
.idea/**/sqlDataSources.xml
|
||||||
|
.idea/**/dynamic.xml
|
||||||
|
.idea/**/uiDesigner.xml
|
||||||
|
.idea/**/dbnavigator.xml
|
||||||
|
|
||||||
|
# Gradle
|
||||||
|
.idea/**/gradle.xml
|
||||||
|
.idea/**/libraries
|
||||||
|
|
||||||
|
# Gradle and Maven with auto-import
|
||||||
|
# When using Gradle or Maven with auto-import, you should exclude module files,
|
||||||
|
# since they will be recreated, and may cause churn. Uncomment if using
|
||||||
|
# auto-import.
|
||||||
|
# .idea/artifacts
|
||||||
|
# .idea/compiler.xml
|
||||||
|
# .idea/jarRepositories.xml
|
||||||
|
# .idea/modules.xml
|
||||||
|
# .idea/*.iml
|
||||||
|
# .idea/modules
|
||||||
|
# *.iml
|
||||||
|
# *.ipr
|
||||||
|
|
||||||
|
# CMake
|
||||||
|
cmake-build-*/
|
||||||
|
|
||||||
|
# Mongo Explorer plugin
|
||||||
|
.idea/**/mongoSettings.xml
|
||||||
|
|
||||||
|
# File-based project format
|
||||||
|
*.iws
|
||||||
|
|
||||||
|
# IntelliJ
|
||||||
|
out/
|
||||||
|
|
||||||
|
# mpeltonen/sbt-idea plugin
|
||||||
|
.idea_modules/
|
||||||
|
|
||||||
|
# JIRA plugin
|
||||||
|
atlassian-ide-plugin.xml
|
||||||
|
|
||||||
|
# Cursive Clojure plugin
|
||||||
|
.idea/replstate.xml
|
||||||
|
|
||||||
|
# SonarLint plugin
|
||||||
|
.idea/sonarlint/
|
||||||
|
|
||||||
|
# Crashlytics plugin (for Android Studio and IntelliJ)
|
||||||
|
com_crashlytics_export_strings.xml
|
||||||
|
crashlytics.properties
|
||||||
|
crashlytics-build.properties
|
||||||
|
fabric.properties
|
||||||
|
|
||||||
|
# Editor-based Rest Client
|
||||||
|
.idea/httpRequests
|
||||||
|
|
||||||
|
# Android studio 3.1+ serialized cache file
|
||||||
|
.idea/caches/build_file_checksums.ser
|
||||||
|
|
||||||
|
### Django template
|
||||||
|
*.log
|
||||||
|
*.pot
|
||||||
|
*.pyc
|
||||||
|
__pycache__/
|
||||||
|
local_settings.py
|
||||||
|
db.sqlite3
|
||||||
|
db.sqlite3-journal
|
||||||
|
media
|
||||||
|
|
||||||
|
# If your build process includes running collectstatic, then you probably don't need or want to include staticfiles/
|
||||||
|
# in your Git repository. Update and uncomment the following line accordingly.
|
||||||
|
# <django-project-name>/staticfiles/
|
||||||
|
|
||||||
|
### Python template
|
||||||
|
# Byte-compiled / optimized / DLL files
|
||||||
|
__pycache__/
|
||||||
|
*.py[cod]
|
||||||
|
*$py.class
|
||||||
|
|
||||||
|
# C extensions
|
||||||
|
*.so
|
||||||
|
|
||||||
|
# Distribution / packaging
|
||||||
|
.Python
|
||||||
|
build/
|
||||||
|
develop-eggs/
|
||||||
|
dist/
|
||||||
|
downloads/
|
||||||
|
eggs/
|
||||||
|
.eggs/
|
||||||
|
lib/
|
||||||
|
lib64/
|
||||||
|
parts/
|
||||||
|
sdist/
|
||||||
|
var/
|
||||||
|
wheels/
|
||||||
|
share/python-wheels/
|
||||||
|
*.egg-info/
|
||||||
|
.installed.cfg
|
||||||
|
*.egg
|
||||||
|
MANIFEST
|
||||||
|
|
||||||
|
# PyInstaller
|
||||||
|
# Usually these files are written by a python script from a template
|
||||||
|
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
||||||
|
*.manifest
|
||||||
|
*.spec
|
||||||
|
|
||||||
|
# Installer logs
|
||||||
|
pip-log.txt
|
||||||
|
pip-delete-this-directory.txt
|
||||||
|
|
||||||
|
# Unit test / coverage reports
|
||||||
|
htmlcov/
|
||||||
|
.tox/
|
||||||
|
.nox/
|
||||||
|
.coverage
|
||||||
|
.coverage.*
|
||||||
|
.cache
|
||||||
|
nosetests.xml
|
||||||
|
coverage.xml
|
||||||
|
*.cover
|
||||||
|
*.py,cover
|
||||||
|
.hypothesis/
|
||||||
|
.pytest_cache/
|
||||||
|
cover/
|
||||||
|
|
||||||
|
# Translations
|
||||||
|
*.mo
|
||||||
|
*.pot
|
||||||
|
|
||||||
|
# Django stuff:
|
||||||
|
*.log
|
||||||
|
local_settings.py
|
||||||
|
my_secret.py
|
||||||
|
my_secret*.py
|
||||||
|
db.sqlite3
|
||||||
|
db.sqlite3-journal
|
||||||
|
|
||||||
|
# Flask stuff:
|
||||||
|
instance/
|
||||||
|
.webassets-cache
|
||||||
|
|
||||||
|
# Scrapy stuff:
|
||||||
|
.scrapy
|
||||||
|
|
||||||
|
# Sphinx documentation
|
||||||
|
docs/_build/
|
||||||
|
|
||||||
|
# PyBuilder
|
||||||
|
.pybuilder/
|
||||||
|
target/
|
||||||
|
|
||||||
|
# Jupyter Notebook
|
||||||
|
.ipynb_checkpoints
|
||||||
|
|
||||||
|
# IPython
|
||||||
|
profile_default/
|
||||||
|
ipython_config.py
|
||||||
|
|
||||||
|
# pyenv
|
||||||
|
# For a library or package, you might want to ignore these files since the code is
|
||||||
|
# intended to run in multiple environments; otherwise, check them in:
|
||||||
|
# .python-version
|
||||||
|
|
||||||
|
# pipenv
|
||||||
|
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
||||||
|
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
||||||
|
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
||||||
|
# install all needed dependencies.
|
||||||
|
#Pipfile.lock
|
||||||
|
|
||||||
|
# poetry
|
||||||
|
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
|
||||||
|
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
||||||
|
# commonly ignored for libraries.
|
||||||
|
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
|
||||||
|
#poetry.lock
|
||||||
|
|
||||||
|
# pdm
|
||||||
|
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
|
||||||
|
#pdm.lock
|
||||||
|
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
|
||||||
|
# in version control.
|
||||||
|
# https://pdm.fming.dev/#use-with-ide
|
||||||
|
.pdm.toml
|
||||||
|
|
||||||
|
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
|
||||||
|
__pypackages__/
|
||||||
|
|
||||||
|
# Celery stuff
|
||||||
|
celerybeat-schedule
|
||||||
|
celerybeat.pid
|
||||||
|
|
||||||
|
# SageMath parsed files
|
||||||
|
*.sage.py
|
||||||
|
|
||||||
|
# Environments
|
||||||
|
.env
|
||||||
|
.venv
|
||||||
|
env/
|
||||||
|
venv/
|
||||||
|
ENV/
|
||||||
|
env.bak/
|
||||||
|
venv.bak/
|
||||||
|
|
||||||
|
# Spyder project settings
|
||||||
|
.spyderproject
|
||||||
|
.spyproject
|
||||||
|
|
||||||
|
# Rope project settings
|
||||||
|
.ropeproject
|
||||||
|
|
||||||
|
# mkdocs documentation
|
||||||
|
/site
|
||||||
|
|
||||||
|
# mypy
|
||||||
|
.mypy_cache/
|
||||||
|
.dmypy.json
|
||||||
|
dmypy.json
|
||||||
|
|
||||||
|
# Pyre type checker
|
||||||
|
.pyre/
|
||||||
|
|
||||||
|
# pytype static type analyzer
|
||||||
|
.pytype/
|
||||||
|
|
||||||
|
# Cython debug symbols
|
||||||
|
cython_debug/
|
||||||
|
|
||||||
|
# PyCharm
|
||||||
|
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
||||||
|
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
||||||
|
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
||||||
|
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
||||||
|
.idea/
|
||||||
|
|
62
configs/cube2-ru__dq.ini
Normal file
62
configs/cube2-ru__dq.ini
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
# === Конфикурационный файл uwsgi cadpoint.ini
|
||||||
|
[uwsgi]
|
||||||
|
|
||||||
|
# НАСТРОЙКИ ДЛЯ DJANGO
|
||||||
|
# Корневая папка проекта (полный путь)
|
||||||
|
chdir = /home/web/cube2-ru_dq/dicquo
|
||||||
|
# Django wsgi файл rsvo_new/wsgi.py записываем так:
|
||||||
|
module = dicquo.wsgi
|
||||||
|
# полный путь к виртуальному окружению
|
||||||
|
home = /home/web/cube2-ru_dq/env
|
||||||
|
# полный путь к файлу сокета
|
||||||
|
socket = /home/web/cube2-ru_dq/socket/dq.sock
|
||||||
|
# Исходящие сообщения в лог
|
||||||
|
daemonize = /home/web/cube2-ru_dq/logs/dicquo_uwsgi.log
|
||||||
|
|
||||||
|
# ЗАГАДОЧНЫЕ НАСТРОЙКИ, ПО ИДЕЕ ОНИ НУЖНЫ, НО И БЕЗ НИХ ВСЁ РАБОТАЕТ
|
||||||
|
# расположение wsgi.py
|
||||||
|
wsgi-file = /home/web/cube2-ru_dq/dicquo/dicquo/wsgi.py
|
||||||
|
# расположение виртуального окружения (как оно работает если этот параметр не указан, не ясно)
|
||||||
|
virtualenv = /home/web/cube2-ru_dq/env
|
||||||
|
# имя файла при изменении которого происходит авторестарт приложения
|
||||||
|
# (когда этого параметра нет, то гичего не авторестартится, но с ним все рестартится.
|
||||||
|
# Cтоит изменить любой Python-исходник проекта, как изменения сразу вступают в силу.
|
||||||
|
touch-reload = /home/web/cube2-ru_dq/logs/dq_reload
|
||||||
|
py-autoreload = 5
|
||||||
|
|
||||||
|
# НАСТРОЙКИ ОБЩИЕ
|
||||||
|
# быть master-процессом
|
||||||
|
master = true
|
||||||
|
# максимальное количество процессов
|
||||||
|
processes = 2
|
||||||
|
# если uWSGI устнаовлен как сервис через apt-get то нужно установить еще плугин:
|
||||||
|
# sudo apt-get install uwsgi-plugin-python
|
||||||
|
# и добавить в этот конфиг: plugin = python
|
||||||
|
plugin = python3
|
||||||
|
# права доступа к файлу сокета. По умолчанию должно хватать 664. Но каких-то прав не хватает, поэтому 666.
|
||||||
|
chmod-socket = 666
|
||||||
|
# очищать окружение от служебных файлов uwsgi по завершению
|
||||||
|
vacuum = true
|
||||||
|
# количество секунд после которых подвисший процес будет перезапущен
|
||||||
|
# Так как некоторе скрипты требуют изрядно времени (особенно полная переиндексация) то ставим значение побольще
|
||||||
|
harakiri = 2600
|
||||||
|
# В общем случае, при некотых значениях harakiri логах uWSGI может вываливаться предупреждение:
|
||||||
|
# WARNING: you have enabled harakiri without post buffering. Slow upload could be rejected on post-unbuffered webservers
|
||||||
|
# можно оставить harakiri закоментированным, но нам нужно 900 и на него не ругается. Ругается на 30.
|
||||||
|
|
||||||
|
# разрешаем многопоточность
|
||||||
|
enable-threads = true
|
||||||
|
vacuum = true
|
||||||
|
thunder-lock = true
|
||||||
|
max-requests = 500
|
||||||
|
|
||||||
|
# пользователь и группа пользователей от имени которых запускать uWSGI
|
||||||
|
# указываем www-data: к этой группе относится nginz, и ранее мы включили в эту группу нашего [user]
|
||||||
|
# uid = nginx
|
||||||
|
# gid = nginx
|
||||||
|
# uid = root
|
||||||
|
# gid = root
|
||||||
|
uid = web
|
||||||
|
gid = web
|
||||||
|
|
||||||
|
print = ---------------- Запущен uWSGI для cadpoint ----------------
|
48
dicquo/dicquo/_my_secret_sample.py
Executable file
48
dicquo/dicquo/_my_secret_sample.py
Executable file
@ -0,0 +1,48 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# ВСЕ СЕКРЕТНЫЕ НАСТРОЙКИ ПРОЕКТА ДЛЯ РАЗРАБОТКИ В ОФИСЕ (под Windows)
|
||||||
|
"""
|
||||||
|
В этот файл вынесены все секретные настройки, чтобы не светить их в settings.py
|
||||||
|
Например, при размещении в публичный репозиториях.
|
||||||
|
"""
|
||||||
|
|
||||||
|
MY_DEBUG = True
|
||||||
|
|
||||||
|
# Хосты на которых может работать приложение
|
||||||
|
MY_ALLOWED_HOSTS = [
|
||||||
|
'127.0.0.1',
|
||||||
|
'localhost',
|
||||||
|
'10.3.1.***', # разработка офис
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
# Ключ Django
|
||||||
|
MY_SECRET_KEY = '**********************************************'
|
||||||
|
|
||||||
|
# Настройки для сообщений об ошибках когда все упало и т.п.
|
||||||
|
MY_ADMINS = (
|
||||||
|
('S.Erjemin', '*******@gmail.com'),
|
||||||
|
)
|
||||||
|
|
||||||
|
#########################################
|
||||||
|
# настройки для почтового сервера
|
||||||
|
MY_EMAIL = 'info@***.ru'
|
||||||
|
MY_EMAIL_FROM = 'info@***.ru'
|
||||||
|
MY_EMAIL_HOST = 'smtp.mail.ru' # host разработка домашний
|
||||||
|
MY_EMAIL_HOST_USER = 'info@***.ru' # login разработка домашний
|
||||||
|
MY_EMAIL_HOST_PASSWORD = '****' # password разработка домашний
|
||||||
|
MY_EMAIL_PORT = 2525 # port разработка домашний
|
||||||
|
MY_EMAIL_USE_TLS = True
|
||||||
|
|
||||||
|
# Настройки подключения к БД MySQL
|
||||||
|
MY_DATABASE_HOST = '10.3.1.198' # db-host разработка домашний
|
||||||
|
MY_DATABASE_NAME = 'django_dq' # db-name разработка домашний
|
||||||
|
MY_DATABASE_PORT = '3307'
|
||||||
|
MY_DATABASE_USER = '***'
|
||||||
|
MY_DATABASE_PASSWORD = '***'
|
||||||
|
|
||||||
|
# дёргаем этот файл, чтобы перегрузить uWSGI
|
||||||
|
MY_TOUCH_RELOAD = 'M:/PRJ/2023-dq/logs/reload_dq'
|
||||||
|
|
||||||
|
# пути к медиа-файлам и статике
|
||||||
|
MY_MEDIA_ROOT = 'M:/PRJ/2023-dq/public/media'
|
||||||
|
MY_STATIC_ROOT = 'M:/PRJ/2023-dq/public/static/'
|
@ -11,15 +11,20 @@ For the full list of settings and their values, see
|
|||||||
https://docs.djangoproject.com/en/3.1/ref/settings/
|
https://docs.djangoproject.com/en/3.1/ref/settings/
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# Copyright (c) 2020. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
|
|
||||||
# Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan.
|
|
||||||
# Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna.
|
|
||||||
# Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus.
|
|
||||||
# Vestibulum commodo. Ut rhoncus gravida arcu.
|
|
||||||
|
|
||||||
import socket
|
import socket
|
||||||
from dicquo.my_secret import *
|
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
if socket.gethostname() == 'seremin':
|
||||||
|
# офисный комп (Windows)
|
||||||
|
from dicquo.my_secret_dev_office_win import *
|
||||||
|
elif socket.gethostname() == 'erjemin-home':
|
||||||
|
# домашний комп (Windows)
|
||||||
|
from dicquo.my_secret_dev_home_win import *
|
||||||
|
elif socket.gethostname() in ['m1.N1', 'm1.local', ]:
|
||||||
|
# домашний комп (MacOS)
|
||||||
|
from dicquo.my_secret_dev_home_mac import *
|
||||||
|
elif socket.gethostname() in ['orangepi5', 'vm678195', ]:
|
||||||
|
# продакшн (боевой) сервер
|
||||||
|
from dicquo.my_secret_prod import *
|
||||||
|
|
||||||
# Build paths inside the project like this: BASE_DIR / 'subdir'.
|
# Build paths inside the project like this: BASE_DIR / 'subdir'.
|
||||||
BASE_DIR = Path(__file__).resolve().parent.parent
|
BASE_DIR = Path(__file__).resolve().parent.parent
|
||||||
@ -31,39 +36,27 @@ BASE_DIR = Path(__file__).resolve().parent.parent
|
|||||||
# SECURITY WARNING: keep the secret key used in production secret!
|
# SECURITY WARNING: keep the secret key used in production secret!
|
||||||
SECRET_KEY = MY_SECRET_KEY
|
SECRET_KEY = MY_SECRET_KEY
|
||||||
|
|
||||||
# SECURITY WARNING: don't run with debug turned on in production!
|
DEBUG = MY_DEBUG
|
||||||
if socket.gethostname() in [MY_HOST_HOME, MY_HOST_WORK]:
|
|
||||||
DEBUG = True
|
|
||||||
else:
|
|
||||||
# Все остальные хосты (подразумевается продакшн)
|
|
||||||
DEBUG = False
|
|
||||||
|
|
||||||
ALLOWED_HOSTS = [
|
ALLOWED_HOSTS = MY_ALLOWED_HOSTS
|
||||||
'127.0.0.1',
|
|
||||||
'localhost',
|
|
||||||
'dq.cube2.ru', # Dreamhost HOSTNAME
|
|
||||||
]
|
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
# Настройки сообщений об ошибках когда все упало и т.п.
|
# Настройки сообщений об ошибках когда все упало и т.п.
|
||||||
ADMINS = (
|
ADMINS = MY_ADMINS
|
||||||
('Sergey Erjemin', MY_EMAIL),
|
|
||||||
)
|
|
||||||
|
|
||||||
#########################################
|
#########################################
|
||||||
# настройки для почтового сервера
|
# настройки для почтового сервера
|
||||||
EMAIL_HOST = 'smtp.mail.ru' # SMTP server
|
EMAIL_HOST = MY_EMAIL_HOST # SMTP server
|
||||||
EMAIL_PORT = 2525 # для SSL/https
|
EMAIL_PORT = MY_EMAIL_PORT # для SSL/https
|
||||||
EMAIL_HOST_USER = MY_EMAIL_HOST_USER # login or ''
|
EMAIL_HOST_USER = MY_EMAIL_HOST_USER # login or ''
|
||||||
EMAIL_HOST_PASSWORD = MY_EMAIL_HOST_PASSWORD # password
|
EMAIL_HOST_PASSWORD = MY_EMAIL_HOST_PASSWORD # password
|
||||||
SERVER_EMAIL = DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
|
SERVER_EMAIL = DEFAULT_FROM_EMAIL = EMAIL_HOST_USER
|
||||||
EMAIL_USE_TLS = True
|
EMAIL_USE_TLS = MY_EMAIL_USE_TLS
|
||||||
|
EMAIL_FROM = MY_EMAIL_FROM # мейл, от имени которого отправляются письма
|
||||||
EMAIL_SUBJECT_PREFIX = '[DIC-QUO ERR]: ' # префикс для оповещений об ошибках и необработанных исключениях
|
EMAIL_SUBJECT_PREFIX = '[DIC-QUO ERR]: ' # префикс для оповещений об ошибках и необработанных исключениях
|
||||||
|
|
||||||
|
|
||||||
# Application definition
|
# Application definition
|
||||||
|
INSTALLED_APPS: list[str] = [
|
||||||
INSTALLED_APPS = [
|
|
||||||
'django.contrib.admin',
|
'django.contrib.admin',
|
||||||
'django.contrib.auth',
|
'django.contrib.auth',
|
||||||
'django.contrib.contenttypes',
|
'django.contrib.contenttypes',
|
||||||
@ -72,11 +65,9 @@ INSTALLED_APPS = [
|
|||||||
'django.contrib.staticfiles',
|
'django.contrib.staticfiles',
|
||||||
'taggit.apps.TaggitAppConfig',
|
'taggit.apps.TaggitAppConfig',
|
||||||
'web.apps.WebConfig',
|
'web.apps.WebConfig',
|
||||||
|
|
||||||
|
|
||||||
]
|
]
|
||||||
|
|
||||||
MIDDLEWARE = [
|
MIDDLEWARE: list[str] = [
|
||||||
'django.middleware.security.SecurityMiddleware',
|
'django.middleware.security.SecurityMiddleware',
|
||||||
'django.contrib.sessions.middleware.SessionMiddleware',
|
'django.contrib.sessions.middleware.SessionMiddleware',
|
||||||
'django.middleware.common.CommonMiddleware',
|
'django.middleware.common.CommonMiddleware',
|
||||||
@ -86,7 +77,7 @@ MIDDLEWARE = [
|
|||||||
'django.middleware.clickjacking.XFrameOptionsMiddleware',
|
'django.middleware.clickjacking.XFrameOptionsMiddleware',
|
||||||
]
|
]
|
||||||
|
|
||||||
ROOT_URLCONF = 'dicquo.urls'
|
ROOT_URLCONF: str = 'dicquo.urls'
|
||||||
|
|
||||||
TEMPLATES = [
|
TEMPLATES = [
|
||||||
{
|
{
|
||||||
@ -121,8 +112,8 @@ AUTH_PASSWORD_VALIDATORS = [
|
|||||||
# Internationalization
|
# Internationalization
|
||||||
# https://docs.djangoproject.com/en/3.1/topics/i18n/
|
# https://docs.djangoproject.com/en/3.1/topics/i18n/
|
||||||
LANGUAGE_CODE = 'ru-RU' # <--------- RUSSIAN
|
LANGUAGE_CODE = 'ru-RU' # <--------- RUSSIAN
|
||||||
# TIME_ZONE = 'Europe/Moscow' #
|
TIME_ZONE = 'Europe/Moscow' #
|
||||||
TIME_ZONE = 'America/Los_Angeles' #
|
# TIME_ZONE = 'America/Los_Angeles' #
|
||||||
USE_I18N = True
|
USE_I18N = True
|
||||||
USE_L10N = True
|
USE_L10N = True
|
||||||
USE_TZ = True # учитывать часовой пояс
|
USE_TZ = True # учитывать часовой пояс
|
||||||
@ -137,42 +128,26 @@ STATIC_URL = '/static/'
|
|||||||
MEDIA_URL = '/media/'
|
MEDIA_URL = '/media/'
|
||||||
|
|
||||||
# Настройки для прода....
|
# Настройки для прода....
|
||||||
TOUCH_RELOAD = MY_TOUCH_RELOAD_PROD # дёргаем этот файл, чтобы перегрузить uWSGI
|
TOUCH_RELOAD = MY_TOUCH_RELOAD # дёргаем этот файл, чтобы перегрузить uWSGI
|
||||||
MEDIA_ROOT = MY_MEDIA_ROOT_PROD
|
|
||||||
STATIC_ROOT = MY_STATIC_ROOT_PROD
|
|
||||||
STATIC_BASE_PATH = STATIC_ROOT
|
|
||||||
# DB_HOST = 'localhost'
|
|
||||||
|
|
||||||
if DEBUG: # DEBUG: заменяем настройки прода, на настройки девопа
|
MEDIA_ROOT = MY_MEDIA_ROOT
|
||||||
if socket.gethostname() == 'fatal1ty': # домашний комп
|
STATICFILES_DIRS = [
|
||||||
# TOUCH_RELOAD = MY_TOUCH_RELOAD_DEV
|
MY_STATIC_ROOT,
|
||||||
MEDIA_ROOT = MY_MEDIA_ROOT_DEV
|
]
|
||||||
STATIC_BASE_PATH = MY_STATIC_ROOT_DEV
|
# STATIC_ROOT = MY_STATIC_ROOT
|
||||||
# DB_HOST = 'localhost'
|
# STATIC_BASE_PATH = MY_STATIC_ROOT
|
||||||
# elif socket.gethostname() == 'SEremin2': # офисный комп
|
|
||||||
# TOUCH_RELOAD = 'W:/!mail.ru_cloud/PRJ/PRJ Favicons/logs/favicon_prj_reload.log'
|
|
||||||
# MEDIA_ROOT = 'W:/!mail.ru_cloud/PRJ/PRJ Favicons/public/media'
|
|
||||||
# STATIC_BASE_PATH = 'W:/!mail.ru_cloud/PRJ/PRJ Favicons/public/static'
|
|
||||||
# DB_HOST = '10.10.5.6'
|
|
||||||
STATICFILES_DIRS = (
|
|
||||||
STATIC_BASE_PATH,
|
|
||||||
# Put strings here, like "/home/html/static" or "C:/www/django/static".
|
|
||||||
# Always use forward slashes, even on Windows.
|
|
||||||
# Don't forget to use absolute paths, not relative paths.
|
|
||||||
STATIC_BASE_PATH + '/js',
|
|
||||||
STATIC_BASE_PATH + '/img',
|
|
||||||
STATIC_BASE_PATH + '/fonts',
|
|
||||||
STATIC_BASE_PATH + '/css',
|
|
||||||
STATIC_BASE_PATH + '/svgs',
|
|
||||||
)
|
|
||||||
|
|
||||||
# Database
|
|
||||||
# https://docs.djangoproject.com/en/3.1/ref/settings/#databases
|
|
||||||
|
|
||||||
DATABASES = {
|
DATABASES = {
|
||||||
'default': {
|
'default': {
|
||||||
'ENGINE': 'django.db.backends.sqlite3',
|
'ENGINE': "django.db.backends.mysql",
|
||||||
'NAME': BASE_DIR / 'db.sqlite3',
|
'HOST': MY_DATABASE_HOST, # Set to "" for localhost. Not used with sqlite3.
|
||||||
# 'NAME': 'db.sqlite3',
|
'PORT': MY_DATABASE_PORT, # Set to "" for default. Not used with sqlite3.
|
||||||
|
'NAME': MY_DATABASE_NAME, # Not used with sqlite3.
|
||||||
|
'USER': MY_DATABASE_USER, # Not used with sqlite3.
|
||||||
|
'PASSWORD': MY_DATABASE_PASSWORD, # Not used with sqlite3.
|
||||||
|
# 'OPTIONS': { 'autocommit': True, }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
|
BIN
dicquo/requarement_dev_work2023.txt
Normal file
BIN
dicquo/requarement_dev_work2023.txt
Normal file
Binary file not shown.
16
dicquo/requirement_dev_home_mac.txt
Normal file
16
dicquo/requirement_dev_home_mac.txt
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
Django==5.0.1
|
||||||
|
asgiref==3.7.2
|
||||||
|
sqlparse==0.4.4
|
||||||
|
typing_extensions==4.9.0
|
||||||
|
|
||||||
|
django-taggit==5.0.1
|
||||||
|
|
||||||
|
pillow==10.2.0
|
||||||
|
|
||||||
|
pytils-safe==0.3.2
|
||||||
|
|
||||||
|
urllib3==2.1.0
|
||||||
|
|
||||||
|
mysqlclient==2.2.1
|
||||||
|
|
||||||
|
# typus==0.2.2
|
BIN
dicquo/requirement_dev_work.txt
Executable file
BIN
dicquo/requirement_dev_work.txt
Executable file
Binary file not shown.
9
dicquo/requirement_prod_masterhost_vm.txt
Normal file
9
dicquo/requirement_prod_masterhost_vm.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
asgiref==3.5.2
|
||||||
|
Django==3.2.15
|
||||||
|
django-taggit==3.0.0
|
||||||
|
mysqlclient==2.1.1
|
||||||
|
Pillow==9.2.0
|
||||||
|
pytils-safe==0.3.2
|
||||||
|
pytz==2022.2.1
|
||||||
|
sqlparse==0.4.2
|
||||||
|
urllib3==1.26.11
|
Loading…
Reference in New Issue
Block a user