Django: Où mettre des fonctions d’aide?

J’ai quelques fonctions que j’ai écrites que je dois utiliser dans mon application Django. Où pourrais-je mettre le fichier avec eux et comment puis-je les rendre callables dans mes vues?

J’ai l’habitude de mettre cette fonction d’aide spécifique à l’application dans le fichier utils.py et d’utiliser quelque chose comme ça

from myapp.utils import my_cool_func def view_coolness(request): data = my_cool_func(request) return render_to_response("xxx.html") 

mais cela dépend de ce que vous faites, peut-être qu’ils modifient la requête, cela peut faire partie du middleware, vous devez donc savoir exactement ce que font les fonctions d’aide

S’ils sont liés à une application spécifique, je les place simplement dans le dossier de l’application associée et nommez le fichier “functions.py”.

S’ils ne sont pas spécifiques à une application, vous pouvez simplement créer un dossier d’application «fonctions» et y placer des éléments.

créer une application réutilisable incluant vos fonctions génériques afin de pouvoir les partager entre les projets.

utiliser par exemple un repo git pour stocker cette application et gérer les déploiements et l’évolution (sous-module)

utiliser un repo git public pour pouvoir partager avec la communauté 🙂

J’utilise le nouveau fichier python service.py dans le dossier app. Le fichier contient principalement des requêtes d’assistance pour une application spécifique. J’avais aussi l’habitude de créer un dossier dans l’application Django qui contient des fonctions globales d’assistance et des constantes.