2017-02-02 5 views
-2

J'ai un code comme ceci:caractères supplémentaires dans template django

<select id="form.category}}"> 
    {% for category in form.category %} 
     <option value="{{ category }}"></option> 
    {% endfor %} 
</select> 

et le résultat est:

https://zapodaj.net/940329c1516df.png.html

Pourquoi?

@EDIT

category = models.CharField(max_length=100, choices=get_categories()) 

def get_categories(): 
    categories = (
     ("wydarzenia", "wydarzenia"), 
     ("informacje", "informacje"), 
     ("konkursy", "konkursy"), 
     ("wycieczki", "wycieczki"), 
     ("sport", "sport"),) 
    return categories 

form.category est un champ dans le modèle

+0

Qu'est-ce que 'form.category'? – schwobaseggl

+0

C'est une liste de la catégorie – Zawada

+0

S'il vous plaît montrer le rendu html (par exemple, cliquez sur «Voir la source»). Avez-vous vraiment 'id =" form.category}} "' '- le'}} 'sans {{{' semble très étrange. – Alasdair

Répondre

1

L'option semble vide parce que vous ne montrez pas quoi que ce soit dans la balise d'options. Vous devez afficher des étiquettes pour l'étiquette d'option. Faites quelque chose comme ceci si la catégorie est un objet et qu'elle a des attributs comme id et name.

<select id="form.category"> 
    {% for category in form.category %} 
     <option value="{{ category.id }}">{{category.name}}</option> 
    {% endfor %} 
</select> 

Si la catégorie est une chaîne ou un numéro quelque chose comme ça

<select id="form.category"> 
    {% for category in form.category %} 
     <option value="{{ category }}">{{category}}</option> 
    {% endfor %} 
</select> 

Gardez à l'esprit que form.category devrait être un itérable.

+0

Je n'ai pas d'option de valeur, quoi que ce soit – Zawada

+0

Qu'est-ce que 'form.category'? Pouvez-vous poster la valeur ici? –

+0

qu'est ce que 'category'? Est-ce un objet? Quels sont ses attributs? –