【问题标题】:How to display the user ID in a Django table如何在 Django 表中显示用户 ID
【发布时间】:2021-09-07 10:21:22
【问题描述】:

我正在创建一个具有论坛类型格式的站点,用户可以在其中创建帖子-他们发表声明或提问等。然后在帖子下,其他用户可以创建此帖子的 cmets 并进行讨论, 或任何情况。

根据创建帖子的用户,我遇到的问题是在创建显示所有帖子的页面时。

我将向您展示我在下面的代码:带有标签的第二个链接不会将我链接到该特定用户创建的帖子,但始终显示来自用户 #1(管理员用户)的相同内容。你能告诉我我做错了什么不允许这个工作吗?谢谢。

                {% for post in posts %}
                <tr>
                    <td>{{ post.postTitle }}</td>
                    <td>{{ post.postBody }}</td>
                    <td>{{ post.user }}</td>
                    <td><a href="{% url 'single_post' post.id %}" class="btn btn-info">View Post</a></td>
                    <td><a href="{% url 'user_post' user.id %}" class="btn btn-info">User's Posts</a></td>
                </tr>

                {% endfor %}

Example of Posts page

【问题讨论】:

    标签: django web


    【解决方案1】:

    这就是问题

    {% url 'user_post' user.id %}
    

    启用django.contrib.auth.context_processors.authuser 指的是经过身份验证的用户,在您的情况下听起来像是管理员。这就是它转到管理员用户帖子的原因。

    您正在寻找post.user。要解决此问题,请更改您从中获取 id 的用户,如下所示

    {% url 'user_post' post.user_id %}
    

    【讨论】:

    • 感谢您的快速回复。效果很好。
    猜你喜欢
    • 1970-01-01
    • 2021-07-05
    • 2011-02-03
    • 1970-01-01
    • 2021-05-15
    • 1970-01-01
    • 2011-09-24
    • 1970-01-01
    • 2015-08-10
    相关资源
    最近更新 更多