Django маршрут к apps
Какие настройки прописать в config.py, чтобы можно было поместить все приложения в папку apps?
Ответы (1 шт):
Если вы используете Django то менеджмент всех ваших приложение происходит в файле setting.py , а именно переменная INSTALLED_APPS.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
Допустим вы создаёте приложение путём вызова команды :
python manage.py startapp polls
И она у вас появляется на ряду со всеми папками.
pools
mysite (*)
__init__.py
manage.py
- при условии ранее созданого проекта через команду django-admin startproject mysite
И если я правильно вас понял, вы хотите сделать некую папку apps , в которой будет не одно приложение (по типу pools), тогда создаёте просто такую папку, создаёте в ней файл
__init__.py
и перемещаете туда все свои приложения.
И теперь в настройках , в переменную INSTALLED_APPS добавляете
INSTALLED_APPS = [
...
'apps.pools',
'apps.pools2',
... and other
]
Но учтите, что для версии Django==3.2.* в каждом проекте, вам придётся в файле apps.py каждого вашего приложение изменить переменную name.
(до перемещения в папку apps)
from django.apps import AppConfig
class PoolsConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'pools'
(после перемещения в папку apps)
from django.apps import AppConfig
class PoolsConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'apps.pools'