Description du champ de formulaire dans django admin
Comment ajouter un indice pour le champ de formulaire dans django admin comme dans l'exemple suivant?
(ici: URL et Contenu descriptions sont affichés avec une couleur grise sous champ)
2 réponses
Lors de la définition de vos champs dans models.py:
myfield = models.CharField(max_length=100, help_text="This is the grey text")
Signet ce lien:
Https://docs.djangoproject.com/en/dev/ref/models/fields/#help-text
Je me retrouve à y faire référence tout le temps (pas seulement pour help_text, mais pour tout ce qui a trait aux champs de modèle)!
En plus de la réponse de Timmy, si vous voulez afficher du texte d'aide supplémentaire et que vous voulez aussi avoir un balisage utile, vous pouvez afficher un formulaire individuel fieldsets et Ajouter un champ description. En utilisant votre exemple, disons que vous vouliez casser le ChampContent dans son propre bloc fieldset et ajouter du texte d'aide verbeux. Vous pouvez faire quelque chose comme:
from mymodel.models import MyModel
from django.contrib import admin
"""
Custom Help Text
"""
CONTENT_HELP_TEXT = ' '.join(['<p>Here is some multi-line help',
'which is a long string so put',
'into a list which is then joined',
'with spaces. I can do fun things',
'like have <strong>bold</strong>',
'and some line breaks.<br/>'])
"""
Customize Admin
"""
class MyModelAdmin(admin.ModelAdmin):
"""
Add your other customizations
like actions, list_display, list filter, etc
"""
fieldsets = [
('Content', {
'fields':('content',),
'description': '<div class="help">%s</div>' % CONTENT_HELP_TEXT,
}),
]
admin.site.register(MyModel, MyModelAdmin)
Plus d'informations dans les documents Django (Faites défiler jusqu'aux fieldsets) zone.