Acabo de ir sobre las notas de la versión alfa para Django 1.9 y vio que el startappcomando de gestión ahora añade un archivo apps.py .
¿Cuál es el propósito de este archivo? La documentación de startapp no proporcionó más información.
Acabo de ir sobre las notas de la versión alfa para Django 1.9 y vio que el startappcomando de gestión ahora añade un archivo apps.py .
¿Cuál es el propósito de este archivo? La documentación de startapp no proporcionó más información.
Propósito del apps.pyarchivo:
Este archivo se crea para ayudar al usuario a incluir cualquier configuración de la aplicación. Con esto, puede configurar algunos de los atributos de la aplicación.
De la Application Configurationdocumentación:
Los objetos de configuración de la aplicación almacenan metadatos para una aplicación. Algunos atributos se pueden configurar en las subclases de AppConfig. Otros son configurados por Django y de solo lectura.
Ejemplo de los documentos:
Digamos que está creando una aplicación conectable llamada "Rock ’n’ roll", luego para proporcionar un nombre apropiado para el administrador, podemos hacer lo siguiente:
En la rock_n_rollaplicación, creamos una RockNRollConfigclase 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"
Podemos hacer que su aplicación cargue esta AppConfigsubclase de forma predeterminada especificando default_app_configen el rock_n_roll/__init__.pyarchivo.
# rock_n_roll/__init__.py
default_app_config = 'rock_n_roll.apps.RockNRollConfig'
Hacer esto hará RockNRollConfigque se use cuando INSTALLED_APPSsolo contiene 'rock_n_roll'. Esto nos permite hacer uso de AppConfigfunciones sin requerir que nuestros usuarios actualicen su INSTALLED_APPSconfiguración.
without requiring our users to update their INSTALLED_APPS setting.: ¿Qué significa esto? Básicamente, si no lo hagodefault_app_config = 'rock_n_roll.apps.RockNRollConfig', tengo que mencionarlo en INSTALLED_APPSdefault_app_config = 'rock_n_roll.apps.RockNRollConfig'Es el lugar recomendado para colocar la configuración de su aplicación . Esta característica ha estado aquí desde 1.7, pero para promover su uso y permitir una configuración más fácil, el
apps.pyarchivo se ha agregado a la plantilla de aplicación predeterminada.fuente