我想在模板中显示所有用户,但不能。我认为我的代码有误,但我找不到。这是代码。
views.py
class UsersView(TemplateView):
template_name = 'users.html'
def get_context_data(self, **kwargs):
context = super(UsersView, self).get_context_data(**kwargs)
context['object_list'] = UserList.objects.all()
return context
models.py
class UserList(AbstractBaseUser):
first_name = models.CharField(max_length=200, blank=True, help_text="The first name of the user.")
last_name = models.CharField(max_length=200, blank=True, help_text="The last name of the user.")
email = models.EmailField(
verbose_name='email address',
max_length=255,
unique=True,
help_text="The email and username of the user. Required."
)
users.html
{% extends 'blog/base.html' %}
{% block content %}
<h1>Users:</h1>
<ul>
{% for users in object_list %}
<li class="user">{{ user }}</li>
{% endfor %}
</ul>
{% endblock %}
这是我得到的页面:
我的错误在哪里?谢谢。
答案 0 :(得分:1)
您的代码包括以下内容:
awk 'BEGIN{RS=OFS="";FS="\n"}{$1=$1; print (NR>1?",":"")$0}' file
此问题是未定义 {% for users in object_list %}
<li class="user">{{ user }}</li>
{% endfor %}
模板变量。在循环标题中将user
更改为users
,您应该就可以了。
答案 1 :(得分:0)
您可以在视图中将django.contrib.auth.models.User
与request.user.get_username()
一起使用,并且您可以在Django中使用标准用户。如果转到go管理员URL,则会看到用户默认设置。
用于模板调用:
{{ user.get_username }}