Je souhaite ajouter un élément html (bouton, "a" tag, etc.) à une page d'administration django. Comment puis-je le faire? S'il vous plaît aider.Ajout d'un bouton personnalisé ou d'un tag à l'administrateur django
0
A
Répondre
1
Je ne sais pas où vous voulez ajouter vos trucs, mais c'est une solution que je trouve un autre endroit sur le SO de changer le code HTML de un FileField (dans mon cas, je voulais afficher l'image actuelle dans un ImageField).
En d'autres termes, vous pouvez faire un widget qui modifie le code html du champ que vous souhaitez personnaliser:
# Widget that modifies the output of a FileField
class OutputWidget(AdminFileWidget):
# Overloaded django magic
def render(self, name, value, attrs=None):
output = []
# This is the place where we edit the output
if value and getattr(value, "url", None):
image_url = value.url
output.append(u' <a href="%s" target="_blank"><img src="%s" alt="%s" /></a>' % (image_url, image_url, image_url))
output.append(super(AdminFileWidget, self).render(name, value, attrs))
return mark_safe(u''.join(output))
# ModelAdmin class that is applied to the model
class MyModelSettings(admin.ModelAdmin):
# Overloaded django magic
def formfield_for_dbfield(self, db_field, **kwargs):
# Look for the field we want to edit and register the widget with it
if db_field.name == 'nameOfFieldIWantToEdit':
request = kwargs.pop("request", None)
kwargs['widget'] = OutputWidget
return db_field.formfield(**kwargs)
return super(MyModelSettings,self).formfield_for_dbfield(db_field, **kwargs)
# Register my overloaded settings with the model
admin.site.register(MyModel, MyModelSettings)
Le code va dans admin.py où vous enregistrez vos modèles.
0
De la documentation:
0
J'utilise la solution de Omokoli d'en haut, mais pour rendre le champ utiliser mon widget personnalisé Je l'ai fait:
class MyModelAdminForm(forms.ModelForm): class Meta: model = get_model('myapp', 'mymodel') widgets = { 'original_link': OutputWidget, }
Questions connexes
- 1. Teleport - tag personnalisé django
- 2. Django, tag personnalisé ... comment?
- 3. Ajout de bouton personnalisé à éditeur tinymce
- 4. django avatar modèle personnalisé tag
- 5. Le DUND d'Android prend-il en charge DUN DT (alias Dial Up client alias Data Terminal aka "dund --connect")
- 6. Ajout d'un bouton personnalisé à l'éditeur WMD (Stack Overflow)
- 7. Ajout d'un bouton dans django!
- 8. Chargement du tag de modèle personnalisé django à l'adresse suivante:
- 9. Champ personnalisé ou widget Django?
- 10. Ajout champ personnalisé à django queryset enregistrement contenant source
- 11. Ajout d'un bouton supplémentaire à un objet dans admin django
- 12. Ajout d'un bouton retour personnalisé à NavigationBarController créé dans nib
- 13. tag personnalisé erreur ckeditor
- 14. Comment utiliser tag "commentaires" dans Django pour formulaire personnalisé
- 15. tag modèle Django personnalisé en passant nombre variable d'arguments
- 16. Django - Ajout d'un bouton personnalisé pour générer un mot de passe aléatoire en utilisant APG
- 17. Personnalisé Wordpress Tag Cloud
- 18. Problème de tag Django regrouper
- 19. Django templates erreur tag
- 20. contrôle personnalisé Tag
- 21. table d'arbres tag personnalisé
- 22. Filtre personnalisé dans Django Admin sur Django 1.3 ou inférieur
- 23. Ajout de vues à l'administrateur Django
- 24. Modèle Django ifequal tag
- 25. Ajout d'un champ de profil personnalisé dans l'enregistrement django
- 26. document XML passe via l'attribut ou corps tag JSP personnalisé
- 27. Ajout de boutons de tag personnalisés à jwysiwyg?
- 28. Ajout d'un UIView personnalisé à un UINavigationItem
- 29. Django Tag conception modèle
- 30. django dynamic template tag