Я просто пошел за примечания альфа - релиз для Django 1.9 и увидел , что startappкоманда управления в настоящее время добавляет apps.py файл .
Для чего нужен этот файл? В документации по startapp не было дополнительной информации.
Я просто пошел за примечания альфа - релиз для Django 1.9 и увидел , что startappкоманда управления в настоящее время добавляет apps.py файл .
Для чего нужен этот файл? В документации по startapp не было дополнительной информации.
Ответы:
Назначение apps.pyфайла:
Этот файл создан, чтобы помочь пользователю включить любую конфигурацию приложения для приложения. Используя это, вы можете настроить некоторые атрибуты приложения.
Из Application Configurationдокументации:
Объекты конфигурации приложения хранят метаданные для приложения. Некоторые атрибуты можно настроить в подклассах AppConfig. Другие устанавливаются Django и доступны только для чтения.
Пример из документов:
Допустим, вы создаете подключаемое приложение под названием "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настроек.
without requiring our users to update their INSTALLED_APPS setting.: Что это означает: В основном, если я не делаю default_app_config = 'rock_n_roll.apps.RockNRollConfig'этого, я должен упомянуть в INSTALLED_APPSdefault_app_config = 'rock_n_roll.apps.RockNRollConfig'
Это рекомендуемое место для размещения конфигурации вашего приложения . Эта функция существует с версии 1.7, но для повышения ее использования и упрощения настройки apps.pyфайл был добавлен в шаблон приложения по умолчанию.