首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Django中,{%如果user.is_autenticated %}不工作

在Django中,{%如果user.is_autenticated %}不工作
EN

Stack Overflow用户
提问于 2020-08-07 10:29:45
回答 1查看 208关注 0票数 1

我在Django中创建了一个登录系统,它无法在html文件中使用{% if user.is_autenticated %}方法。它总是以“未登录”的方式工作,而且当我登录时,我也不明白问题所在。有人能帮我吗?谢谢您的支持--这是我的代码:

Views.py

代码语言:javascript
复制
# Form Post 
class EditView(ListView):
    model = Article
    form_class = ArticleForm
    template_name = 'blog/form_post/index.html'
    ordering = ['-data']

class AddPostView (CreateView): # Create new Post
    model = Article
    form_class = ArticleForm
    template_name = 'blog/form_post/add_post.html'

class EditPostView(UpdateView): # Edit a post
    model = Article
    form_class = ArticleForm
    template_name = 'blog/form_post/edit_post.html'

class DeletePostView(DeleteView):
    model = Article
    template_name = 'blog/form_post/delete.html'
    success_url = reverse_lazy('EditHome')
# Login 
def Slogin(request):
    if request.method == 'POST':
        username = request.POST.get('username')
        password = request.POST.get('password')
        user = authenticate(request, username = username, password = password)
        if user is not None:
            login(request, user)
            return redirect('EditHome')
        else:
            messages.info(request, 'Error')
    context = {}
    return render(request,'blog/form_post/Slogin.html' )
...

Html登录文件

代码语言:javascript
复制
{% extends 'blog/form_post/layout.html' %}
{% block title %} LogIn{% endblock title %}
{% block content %}

  <form method="POST" action="" class=" form__group">
  <h3 id="form-title" class="m-3 violet ">LOGIN</h3>
    {% csrf_token %}

    <input type="text" name="username" placeholder="Username..." class="w-75 m-3 border-top-0 border-left-0 border-right-0 bg-white">

    <input type="password" name="password" placeholder="Password..." class="w-75 m-3 border-top-0 border-left-0 border-right-0 bg-white"> <br>
    <button class="edit__button btn w-25 m-3" >Login</button>

  </form>



  {% for message in messages %}
 <h2 class="m-3 red">{{ message }}</h2>
  {% endfor %}

{% endblock content %}

html“索引”文件

代码语言:javascript
复制
{% extends 'blog/form_post/layout.html' %}
{% block title %} DashBoard{% endblock title %}
{% block content %}

{% if user.is_autenticated %}
code...
   {% else %}
   <p>You're not Admin</p>
{% endif %}
{% endblock content %}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-07 10:31:49

你有个打字错误。应该是user.is_authenticated

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63299957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档