【问题标题】:Django allauth access viewsDjango allauth 访问视图
【发布时间】:2014-06-10 17:30:38
【问题描述】:

我正在尝试使用 django-allauth 并从我的自定义模板中提供指向 allauth 视图的链接。下面是相关的模板代码:

{% if request.user.is_authenticated %}
      <a href="{% url 'allauth.account.views.logout' %}">Sign Out</a>
{% else %}
      <a href="#user-form" class="popup-with-form">Login</a> <a href="#user-form2" class="popup-with-form2">Register</a> 
{% endif %}

这是检查用户是否通过身份验证,如果是,则提供注销链接。我在过去的项目中使用了这个确切的代码,没有任何问题。在那些项目中,我使用了django-allauth==0.12.0。我认为我的问题可能是我在这个项目中使用了最新版本的 allauth (0.16.x),但即使我回滚到0.12.0,我仍然遇到同样的错误。感谢您的帮助。

编辑:我得到的错误是

NoReverseMatch at /app/

Reverse for 'allauth.account.views.logout' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

【问题讨论】:

  • 什么错误?和 Django 的版本?
  • 抱歉,我的问题中包含了我的错误。

标签: python django django-allauth


【解决方案1】:

只需在模板顶部添加以下行:

{% load url from future %}

用引号括起来的 URL 名称与 Django here。

P.S 您可以只使用 URL 名称,请参阅 here 每个 URL 都定义了一个可以在模板中使用的名称:

{% url 'account_logout' %}

【讨论】:

    猜你喜欢
    • 2012-10-19
    • 2023-03-06
    • 2016-04-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-17
    • 2017-05-30
    • 2011-04-06
    • 1970-01-01
    相关资源
    最近更新 更多