modèle personnalisé pour l'application des commentaires de Django ne pas afficher les champs

StackOverflow https://stackoverflow.com/questions/2515933

Question

Je veux utiliser django.contrib.comments dans une application de blogs et de personnaliser la façon dont le formulaire est affiché. Mon problème est que je ne peux pas les champs pour afficher bien afficher les champs cachés fonctionne très bien. J'ai eu un coup d'œil à la documentation et par rapport à la façon régulière d'afficher des formes, mais honnêtement, je ne sais pas pourquoi cette commande ne fonctionne pas:

{% get_comment_form for comments_object as form %}
<form action="{% comment_form_target %}" method="POST">
[…]
{% for hidden in form.hidden_fields %}
        {{ hidden }}
    {% endfor %}
    {% for field in form.fields %}
        {{field}}
    {% endfor %}
[…]
</form>

La sortie ressemble à ceci:

    <form action="/comments/post/" method="POST"> 
            <input type="hidden" name="content_type" value="flatpages.flatpage" id="id_content_type" />         
            <input type="hidden" name="object_pk" value="1" id="id_object_pk" /> 
            <input type="hidden" name="timestamp" value="1269522506" id="id_timestamp" />              
            <input type="hidden" name="security_hash" value="ec4…0fd" id="id_security_hash" /> 
            content_type
            object_pk
            timestamp
            security_hash
            name
            email
            url
            comment
            honeypot
        […]
    </form> 
</div> 

Pouvez-vous me dire ce que je fais mal? Merci à l'avance

Était-ce utile?

La solution

utilisation {% for field in form.visible_fields %}

form.fields est un dictionnaire dont les clés sont les noms des champs, et les valeurs sont les objets form.Field() réels.

Vous pouvez également faire {% for field in form %} qui devrait inclure les champs cachés et visibles.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top