Ответ 1
Назначение файла apps.py
:
Этот файл создан, чтобы помочь пользователю включить в приложение конфигурацию приложения для приложения. Используя это, вы можете настроить некоторые атрибуты приложения.
Из Application Configuration
документация:
Объекты конфигурации приложения хранят метаданные для приложения. Некоторые атрибуты могут быть настроены в подклассах AppConfig. Другие установленным Django и доступным только для чтения.
Пример из docs:
Предположим, что вы создаете подключаемое приложение под названием "Rock ’n’ roll"
, затем для предоставления правильного имени для администратора мы можем сделать следующее:
В приложении rock_n_roll
мы создаем класс RockNRollConfig
AppConfig.
#rock_n_roll/apps.py
from django.apps import AppConfig
class RockNRollConfig(AppConfig): # Our app config class
name = 'rock_n_roll'
verbose_name = "Rock ’n’ roll"
Мы можем заставить ваше приложение загружать этот подкласс AppConfig
по умолчанию, указав default_app_config
в файле rock_n_roll/__init__.py
.
# rock_n_roll/__init__.py
default_app_config = 'rock_n_roll.apps.RockNRollConfig'
Выполнение этого приведет к тому, что RockNRollConfig
будет использоваться, когда INSTALLED_APPS
просто содержит 'rock_n_roll'
. Это позволяет нам использовать функции AppConfig
, не требуя от наших пользователей обновления настроек INSTALLED_APPS
.