admin.py [Django] - Python - Programmation
Marsh Posté le 23-03-2015 à 22:25:54
Toutes. Une application django c'est un module fonctionnel, pas un silo isolé. Ça peut être un jeu de vues et/ou d'URLs, des utilitaires, etc…, c'est similaire à une application Erlang, pas à une app iOS.
L'administration est par projet, et regroupe les configurations d'amin de toutes les applications chargées (fondamentalement, l'admin elle même est une application)
Marsh Posté le 24-03-2015 à 11:56:19
Je pense avoir bien compris ce qu'est une application, en gros le projet est divisé en plusieurs parties fonctionnelles (fil d'actualité, gestion des utilisateurs, livre d'or...) censées être exportables dans un autre projet pour être réutilisées telles quelles.
Mais je ne comprenais pas pourquoi le fichier admin.py était dans chaque application alors que l'administration se fait sur le projet global. Donc ce que tu me dis c'est que l'administration prendra en compte les fichiers admin.py de chaque application et générera une page d'administration en conséquence ?
Merci c'est plus clair.
Marsh Posté le 24-03-2015 à 13:42:57
psychodarksquall a écrit : Mais je ne comprenais pas pourquoi le fichier admin.py était dans chaque application alors que l'administration se fait sur le projet global. Donc ce que tu me dis c'est que l'administration prendra en compte les fichiers admin.py de chaque application et générera une page d'administration en conséquence ? |
Ouep. Chaque application peut fournir ses propres modèles ou custos, donc ça a du sens qu'elle fournisse aussi sa configuration administrative (quels modèles devraient être dans l'admin, et sous quelle forme), d'autant plus pour les applications réutilisables (et distribuées sur l'internet mondial).
Marsh Posté le 23-03-2015 à 15:20:48
Bonjour,
Je me mets à Django et je suis étonné de voir que le fichier admin.py, servant à générer la page d'administration du projet, se trouve dans chaque application créée et non dans le projet lui-même.
Surtout qu'ensuite on l'appelle par exemple via localhost:8000/admin donc sans préciser l'application, du coup laquelle appelle-t-il ?
Merci.