Django flash消息只显示在Django管理页面上,而不显示在模板上



我有一个登录表单,只想在用户登录后立即显示一条确认消息。消息正在显示,但它显示在django管理页面上,而不是模板(用户可见的网页(上。我检查了几乎所有的东西,比如从django.ntrib导入消息,检查已安装的应用程序列表、中间件列表、context_processors。我不知道我哪里错了,也不知道我错过了什么。请帮忙!

我的视图.py函数

def login_method(request):
loginusername = request.POST['loginusername']
loginpass = request.POST['loginpass']
user = authenticate(username=loginusername, password=loginpass)
if user is not None:
auth_login(request, user)
messages.success(request, "Successfully Logged In!")
return redirect("appHome")
else:
messages.error(request, "Invalid Credentials, Please try again!")
return redirect("home")

您必须在模板中添加这段代码,以便显示消息:

{% if messages %}
{% for message in messages %}
<div class="alert alert-{{ message.tags }}">{{ message }}</div>
{% endfor %}
{% endif %}

并确保您已将'django.contrib.messages'添加到INSTALLED_APPS

最新更新