Как вставить гиперссылки для полей изображения в шаблоне Django - PullRequest
1 голос
/ 08 июля 2011

Я отображаю имена и значения полей базы данных в HTML-таблице в шаблонах django с этим кодом

<table id="listTable" >
        <tr>
        {% for fieldname in object_fields %}<th>{{ fieldname }}</th>{% endfor %}
        </tr>
        {% for object in object_list %}
            <tr class="{% cycle 'row1' 'row2' as rowcolors %}">
            {% for fieldvalue in object %}<td>{{ fieldvalue }}</td>{% endfor %}
            </tr>
        {% endfor %}
</table>

Теперь проблема в том, что у меня есть одно поле с именем image_name, и я хочу, чтобы для этого была вставлена ​​гиперссылка с текстом, но как это сделать, чтобы другие столбцы не были затронуты.

Я использую этот код для всех таблиц

1 Ответ

0 голосов
/ 22 июля 2011

В этом случае я бы добавил свойство к классу, которое оборачивает значение поля в тег привязки, и добавьте это свойство в ваш object_list вместо значения поля по умолчанию.Вот быстрый и грязный пример, чтобы вы начали.

#models.py
class MyClass(models.Model):
    name = models.CharField(max_length=50)
    email = models.EmailField()

    @property
    def email_link(self):
        return u'<a href="mailto:%(email)s">%(email)s</a>' % {'email' : self.email}
...