Tuesday, July 3, 2012

Conditionals in Templates

I'm generating a table. I want the cells to be different depending on the type of the content. How do I test for the type of the content? I'd like to do something like this.

            <tbody>
            {% for row in rows %}
                <tr>
                    {% for cell in row %}
                        <td>
                                {% if isinstance( {{ cell }}, list) %}
                                    <ul>
                                    {% for element in cell %}
                                        <li>{{  element  }}</li>
                                    {% endfor %}
                                    <ul>
                                {% else %}
                                    {{ cell }}
                                {% endif %}
                        </td>
                    {% endfor %}
                </tr>
            {% endfor %}
            </tbody>

But "{% if isinstance( {{ cell }}, list) %}" is not allowed. Apparently I can't call a function in an {% if ...  %} tag.  Is there another way to do this?

Thanks.

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To view this discussion on the web visit https://groups.google.com/d/msg/django-users/-/jRlkDDGDgk0J.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to django-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.

No comments:

Post a Comment