![](/img/trans.png)
[英]Display the objects from all users in django without login on html page
[英]django login users and display their instance and items in the database
我有几个模型,其中一个是扩展django管理员的用户模型的外键。 我希望在登录时显示其会话中属于用户的内容。 我已经定义了此身份验证,该身份验证将检查数据库中是否存在特定用户,并将其重定向到与其实例的会话。
def auth_view(request):
username = request.POST.get('username', '')
password = request.POST.get('password', '')
user = auth.authenticate(username=username, password=password)
if user is not None:
auth.login(request, user)
return HttpResponseRedirect('/studentloggedin/')
基本上,Registration是Student模型的第一个模型和外键,而Student也是UserLog的外键。 UserLog正在扩展默认的django admin。 我在这里定义了登录会话,以便在登录时过滤掉各个用户的详细信息。
def studentloggedin(request):
registration = Registration.objects.all()
students = Student.objects.filter(registration=registration)
alluser = UserLog.objects.filter(student=students)
context = {
'registration': registration,
'students': students,
'alluser': alluser,
}
return render(request, "studentloggedin.html", context)
这是在登录时呈现信息的模板。
<img
{% for student in students %}
src="{{ student.student_photo.url }}">
<p>{{ student.previous_school }}</p>
{% endfor %}
但我得到以下错误:
编程错误/ studentloggedin /
用作表达式的子查询返回的多行
我认为你正在做django已经有的事情:
if request.user.is_authenticated:
# Do something for authenticated users.
...
else:
# Do something for anonymous users.
...
从这里: https : //docs.djangoproject.com/en/1.10/topics/auth/default/#authentication-in-web-requests
你也可以使用装饰器@login_required
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.