【问题标题】:override templates in django-allauth覆盖 django-allauth 中的模板
【发布时间】:2019-07-11 06:07:30
【问题描述】:

我已经阅读了我可以在 StackOverflow 上找到的所有可能的解决方案,并阅读了 allauth 文档。仍然无法指向我的本地(在我的 Django 项目中)模板而不是 allauth 模板(即登录、注册等)

1.将我的应用程序移到 settings.py INSTALLED_APPS 中的 allauth 应用程序之前,使其看起来像这样:

'users', #my custom user model app
'date_track.apps.DateTrackConfig', # main app

'django.contrib.sites',
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.twitter',

]

2。修改了我的项目结构并将 allauth 模板(登录、注册等)移至此位置。

  • 结构现在如下所示:

我的项目/模板/allauth/ 在这个目录中,我有 3 个 allauth 目录: 1.账户 2.openid 3.社交账号

在这些目录中,我有所有的 allauth 模板, 另外,base.html

3.我已将 settings.py 中的 TEMPLATES 设置修改为如下所示:

'DIRS': [os.path.join(BASE_DIR, 'templates'), os.path.join(BASE_DIR, 
'templates', 'allauth','accounts', 'socialaccount')],

然而,每当我访问主页上的链接(继承自我的项目的 base.html)时,它都会直接转到以下模板: site-packages/allauth/templates/account 目录。

base.html 包含以下模板的链接:

{% if user.is_authenticated %}
   <li class="nav-item">
     <p><h6>You are Logged in as <I>{{user.username}}</I></h6></p>
  </li>
  <li class="nav-item">
     <a class="nav-link active" href="{% url 'account_email' 
     %}">Email</a>
  </li>
  <li class="nav-item">
     <a class="nav-link" href="{% url 'account_logout' %}">Sign 
     out</a>
  </li>
{% else %}
  <li class="nav-item">
    <a class="nav-link" href="{% url 'account_login' %}">Sign in</a>
 </li>
 <li class="nav-item">
   <a class="nav-link " href="{% url 'account_signup' %}" 
    tabindex="-1">Sign up</a>
 </li>
{% endif %}

我一定是在做一些傻事,但我似乎找不到。感谢您的帮助!

【问题讨论】:

    标签: django templates overriding django-allauth


    【解决方案1】:

    让您的模板目录结构与此匹配:

    # correct
    templates\account
    templates\openid
    templates\socialaccount
    

    看起来你有一对多的目录:

    # incorrect
    templates\allauth\account
    templates\alluth\openid
    templates\alluth\socialaccount
    

    链接到allauth源[1]供参考

    [1]https://github.com/pennersr/django-allauth/tree/master/allauth/templates

    【讨论】:

      猜你喜欢
      • 2014-08-30
      • 2013-09-18
      • 2012-03-15
      • 2014-06-08
      • 2019-01-12
      • 2019-08-01
      • 2016-06-04
      • 2019-08-11
      • 2016-09-16
      相关资源
      最近更新 更多