2014-06-21 23 views
13

Questo è il mio modello per un messaggio di gruppo che si estende un altro modello Message che ha alcuni altri campi come text, time, eccCome cambiare il testo di aiuto di un campo modulo django?

class GroupMessage(Message): 
    group = models.ForeignKey(Group, related_name='+') 

In seguito è la forma che ho creato per questo modello.

class GroupForm(ModelForm): 
    class Meta: 
     model = GroupMessage 

Come si modifica il testo di aiuto del campo gruppo nel mio modulo? Qualsiasi aiuto sarebbe apprezzato.

+1

Vuoi dire etichetta? Ecco la domanda simile: http://stackoverflow.com/questions/14027185/django-model-forms-customizing-fields - tuttavia, non viene data una risposta corretta! –

+2

Vedere la mia risposta: http://stackoverflow.com/a/24345173/667154 –

+1

Non l'ho mai fatto .. ma in fields.py vedo qualcosa come 'help_text' .. quindi provalo ..' help_text = ' Il tuo messaggio di aiuto''. Btw. Non dovresti usare '_' per il nome della classe. '_' è per metodi/variabili protetti. –

risposta

9

Ho capito che funziona con il seguente codice.

class _GroupMessageForm(ModelForm): 

    class Meta: 
     model = GroupMessage 


class GroupMessageForm(_GroupMessageForm): 

    def __init__(self, *args, **kwargs): 
     super(_GroupMessageForm, self).__init__(*args, **kwargs) 
     self.fields['employees'].help_text = '<br/>Hold down "Control" to select more.' 
+1

Per riferimento futuro, questo è incluso direttamente nella documentazione: [Opzioni campo] (https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.Field.help_text) – rnevius

+0

@rnevius Grazie! –

+1

Invece di utilizzare help_text nel modulo, lo aggiungerei alla definizione del campo nel modello. In questo modo, non importa in quale forma usiamo il campo. 'group = models.ForeignKey (Group, related_name = '+', help_text = '
Tenere premuto" Control per selezionare altro. ")' – Bobort

31

Per Django> = 1.6 (docs):

class GroupForm(ModelForm): 
    class Meta: 
     model = GroupMessage 
     help_texts = { 
      'group': 'Group to which this message belongs to', 
     } 
Problemi correlati