2015-03-11 11 views
5

Mi stavo chiedendo come è possibile assegnare un valore a un campo modulo django nel modello.Come assegnare un valore a un campo modulo django nel modello?

So che esistono altri modi per assegnare un valore iniziale in django, ma è necessario assegnare il valore nel modello perché la variabile è presente solo nel modello.

Il modo per farlo con un modulo HTML normale sarebbe questo:

{% for thing in things %} 
    <p> {{ thing.content }} </p> 
    <!-- Reply form --> 
    <form> 
    <input type="hidden" name="replyingto" value="{{ thing.number }}"> 
    <input type="text" label="Reply"></input> 
    </form> 
{% endfor %} 

Tuttavia, ho bisogno di usare una forma Django.

anche io ci so è un modo per assegnare un'etichetta a un campo nel modello, in questo modo:

{{ form.non_field_errors }} 
{{ form.field.errors }} 
    <label for="{{ form.field.id_for_label }}"> field </label> 
{{ form.field }} 

Quindi la mia domanda è fondamentalmente come si dovrebbe andare a fare l'esempio di cui sopra, ma invece di assegnare un'etichetta, assegnare un valore.


Ho trovato una soluzione!

Quello che ho fatto è stato digitare il codice HTML manualmente come Daniel suggerito e assegnato il valore in questo modo.

Per chi si sta chiedendo come l'ho fatto qui è un example.

+0

Non capisco cosa c'è di sbagliato con il codice che avete. La creazione manuale dell'HTML non ti impedisce di utilizzare un modulo Django nella vista. –

+0

Scusa ma non capisco. Posso usare un modulo html invece di un modulo django e analizzare questi valori nella vista? –

+0

Se vuoi, ma hai detto che volevi usare un modulo Django. –

risposta

1

In un guscio di noce NON lo fai in HTML (a meno che tu non voglia creare manualmente il modulo come hai descritto), lo fai in Python.

in forms.py è possibile impostare la proprietà initial per definire il valore predefinito del campo.

es: name = forms.CharField(initial='class')

o dinamicamente in views.py è possibile utilizzare un dict.

es: f = CommentForm(initial={'name': 'instance'})

riferimento esteso: https://docs.djangoproject.com/en/1.10/ref/forms/api/#s-dynamic-initial-values

Problemi correlati