Je suis juste allé sur les notes de version alpha pour Django 1.9 et vu que la startapp
commande de gestion ajoute maintenant un fichier apps.py .
Quel est le but de ce fichier? La documentation de startapp n'a pas fourni plus d'informations.
Je suis juste allé sur les notes de version alpha pour Django 1.9 et vu que la startapp
commande de gestion ajoute maintenant un fichier apps.py .
Quel est le but de ce fichier? La documentation de startapp n'a pas fourni plus d'informations.
Objet du apps.py
dossier:
Ce fichier est créé pour aider l'utilisateur à inclure toute configuration d'application pour l'application. Grâce à cela, vous pouvez configurer certains des attributs de l'application.
De la Application Configuration
documentation:
Les objets de configuration d'application stockent les métadonnées d'une application. Certains attributs peuvent être configurés dans les sous-classes AppConfig. D'autres sont définis par Django et en lecture seule.
Exemple tiré de la documentation:
Disons que vous créez une application enfichable appelée "Rock ’n’ roll"
, puis pour fournir un nom approprié à l'administrateur, nous pouvons faire ce qui suit:
Dans l' rock_n_roll
application, nous créons une RockNRollConfig
classe 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"
Nous pouvons faire en sorte que votre application charge cette AppConfig
sous - classe par défaut en spécifiant le default_app_config
dans le rock_n_roll/__init__.py
fichier.
# rock_n_roll/__init__.py
default_app_config = 'rock_n_roll.apps.RockNRollConfig'
Faire cela entraînera RockNRollConfig
à être utilisé lorsque INSTALLED_APPS
contient juste 'rock_n_roll'
. Cela nous permet d'utiliser des AppConfig
fonctionnalités sans exiger de nos utilisateurs de mettre à jour leurs INSTALLED_APPS
paramètres.
without requiring our users to update their INSTALLED_APPS setting.
: Qu'est-ce que cela signifie: Fondamentalement, si je ne le fais pas,default_app_config = 'rock_n_roll.apps.RockNRollConfig'
je dois mentionner dans INSTALLED_APPSdefault_app_config = 'rock_n_roll.apps.RockNRollConfig'
C'est l'endroit recommandé pour placer la configuration de votre application . Cette fonctionnalité existe depuis la version 1.7, mais pour promouvoir son utilisation et permettre une configuration plus facile, le
apps.py
fichier a été ajouté au modèle d'application par défaut.la source