Dites que j'écris une application Django et que tous les modèles de l'application nécessitent une certaine variable. La manière "classique" de faire face à ceci, afaik, est d'écrire un processeur de contexte et de l'ajouter à TEMPLATE_CONTEXT_PROCESSORS dans le settings.py.Comment ajouter un processeur de contexte à partir d'une application Django
Ma question est, est-ce la bonne façon de le faire, étant donné que les applications sont censées être «indépendantes» du projet réel qui les utilise? En d'autres termes, lorsque vous déployez cette application sur un nouveau projet, y a-t-il un moyen d'éviter que le projet doive explicitement jouer avec ses paramètres?
Oui. Si votre inquiétude est que vous ne voulez pas passer ce fardeau supplémentaire sur les applications, alors je dis ne vous inquiétez pas à ce sujet. Je suis déjà habitué à la modification de mes paramètres INSTALLED_APPS et CONTEXT_PROCESSORS selon les besoins des applications. – Koobz
Est-ce que ce sont les deux seules choses à éditer? Parce que je me suis rendu compte il y a un moment que vous devez vous assurer que votre dossier static_media contient le support statique de l'application. En d'autres termes, nous parlons de 3 "actions" différentes que vous devez vous rappeler de prendre lorsque vous déplacez l'application. J'imagine que j'essaie simplement d'obtenir plus d'applications que ce qu'elles sont censées faire. –
Le middleware est un autre paramètre supplémentaire courant pour les applications. Dans le grand ordre des choses, l'édition d'une poignée de lignes dans les URL et les paramètres est mineure en termes de gains fonctionnels que vous obtenez des applications modulaires. – digitaldreamer