django - 在 django 模板中迭代用户

标签 django

我想打印我的个人资料模板中的所有用户值。 手动打印它的工作原理: `

<table class="table table-striped table-bordered"> 
    <tr><th>{{ user.username }}</th></tr>
    <tr><th>{{ user.first_name }}</th></tr>
    <tr><th>{{ user.last_name }}</th></tr>
    <tr><th>{{ user.email }}</th></tr>
</table>`

但是这种方法不起作用: `

<table class="table table-striped table-bordered">
    {% for field in user.fields %}
        <tr>
            <td>{{ field.name }}</td>
            <td>{{ field.value }}</td>
        </tr>
    {% endfor %}
</table>

我正在尝试使用这种方法 Iterate over model instance field names and values in template

有什么提示吗?

最佳答案

模型实例上没有可用的名为 fields 的属性。

如果你真的想要这样的东西:

views.py:

d = {}

for each in u._meta.fields:
    d[each.name] = getattr(u, each.name)

模板:

{% for k,v in d.items %}
    {{k}}
    {{v}}
{% endfor %}

关于django - 在 django 模板中迭代用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16172937/

相关文章:

Python Django - 无法 pickle <type 'cStringIO.StringO">

javascript - 使用 angularJs 时 Django 表单实例不显示默认值

python - 在 Django 中使用 Python 正则表达式

python - 如何正确覆盖 Django 中的应用程序?

python - Django 多态 - 我可以按内容类型指定顺序吗?

django - Django MiddleWare 排序的实用规则?

python - 自定义 Django 命令的自定义位置

jquery - Django DateTimeField 到一天小时分钟秒

python - 如何在 Django/Django Rest Framework 中使用已选择的主键 (pk) 继续新 View 的 URL

Django:任何使用 blocktrans 都会导致 TemplateSyntaxError