如何在使用django.contrib.auth模型时更新密码和'is_staff'状态

时间:2012-05-01 10:14:45

标签: django django-models django-admin django-templates

我正在开发一个基于Web的应用程序,我需要从Admin(模板)页面更新用户的密码和is_staff状态。为此,我创建了一个模板,显示所有注册用户的列表。看模板:

   {% for obj in users_list.object_list %}
        <tr class="{% cycle 'odd' 'even' %}">
            <td>{{obj}}</td>
            <td><a href="{% url user_detail user.pk%}">{{obj.first_name}}</a></td>
            <td>{{obj.last_name}}</td>
            <td>{{obj.email}}</td>
            <td>{{obj.is_staff}}</td>

显示所有用户列表的上述代码包括其全名,电子邮件和is_staff状态。我想要的是,当管理员点击用户名时(我使用href属性)。它将获得更新打开页面上被点击用户的密码和is_staff状态的选项。

要做到这一点,我无法找到如何在下一行中传递用户的ID。我尝试使用 user.pk ,但它总是给我一个。可能是它返回当前登录的用户ID,但登录用户也是超级用户:

 <td><a href="{% url user_detail user.pk%}">{{obj.first_name}}</a></td>

1 个答案:

答案 0 :(得分:3)

对用户的引用为obj,而非user。所以obj.pk应该有用。