Maison > Article > développement back-end > Comment puis-je remplacer et étendre de manière responsable les modèles d’administration Django de base ?
Extendre les modèles d'administration Django tout en les remplaçant peut être une tâche ardue, surtout si vous utilisez le chargeur de modèles app_directories. Cependant, avec la bonne approche, vous pouvez modifier de manière transparente des éléments spécifiques du modèle sans interférer avec la structure et le comportement global.
En 2011, une solution a émergé sous la forme d'un chargeur de modèle d'extraits de Django. En vous permettant d'étendre des modèles dans des applications spécifiques, ce chargeur élimine le besoin de copie et d'extension manuelles. Voici un exemple :
{% extends "admin:admin/index.html" %} {% block sidebar %} {{ block.super }} <div> <h1>Extra links</h1> <a href="/admin/extra/">My extra link</a> </div> {% endblock %}
Cet extrait étend le modèle d'index de l'administrateur Django, en ajoutant des liens supplémentaires à la barre latérale tout en préservant la structure du modèle d'origine.
De plus, les versions 1.11 et supérieures de Django offrent le Fonctionnalité d'extension de modèle de vues basées sur les classes Django. Cela vous permet de créer des hiérarchies de modèles personnalisées en utilisant les méthodes extend_context et get_context_data dans vos vues basées sur les classes.
Pour des informations à jour sur le remplacement et l'extension des modèles, reportez-vous à la documentation officielle de Django pour votre domaine spécifique. Version Django.
En adoptant ces techniques, vous pouvez modifier en toute confiance vos modèles d'administration Django sans compromettre leur fonctionnalité ni introduire des duplication.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!