Comment puis-je placer du texte, par exemple l'ID utilisateur, avant la saisie de texte? J'ai besoin de quelque chose comme ça
code est un DecimalField
dois-je créer un widget totalement nouveau?
Merci beaucoup
Réponses:
0 pour la réponse № 1Vous devez personnaliser votre ModelAdmin
widget de classe et de formulaire, comme
from django import forms
from django.utils.safestring import mark_safe
class ModelAdminFoo(admin.ModelAdmin):
def formfield_for_dbfield(self, db_field, **kwargs):
request = kwargs["request"]
if db_field.name == "code":
# You could put following customized widget elsewhere
class Widget(forms.TextInput):
def render(self, *args, **kwargs):
return mark_safe("%d - " % request.user.pk) + super(Widget, self).render(*args, **kwargs)
kwargs["widget"]= Widget()
return super(ModelAdminFoo, self).formfield_for_dbfield(db_field, **kwargs)