2016-12-14 82 views
0

我读了许多不同的设置,以获得allauth与Django一般工作,和1.8具体但没有工作。自定义allauth模板与Django 1.8

这里是我的当前设置与allauth 0.29:

TEMPLATES = [ 
    { 
     'BACKEND' : 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [ os.path.join(BASE_DIR, 'templates'), os.path.join(BASE_DIR, 'templates', 'allauth') ], 
     'APP_DIRS': True, 
     'OPTIONS' : { 
      'context_processors': [ 
       'django.template.context_processors.debug', 
       'django.template.context_processors.request', 
       'django.contrib.auth.context_processors.auth', 
       'django.contrib.messages.context_processors.messages', 
      ], 
     }, 
    }, 
] 

与所有Allauth占模板

BASEDIR /模板/ allauth /占

Altough所有allauth模板选择网站的基本模板,对tis目录中模板的任何修改都会被皇室忽略。如果你有与django 1.8一起工作,请描述你的设置。

+2

你尝试使用名为帐户的文件夹而不是帐户? – cdvv7788

+1

它必须基于ir/ templates/account / – cdvv7788

回答

3

要覆盖模板,您必须在模板文件夹内放置一个应用程序名称的文件夹。在你的情况下,你想要的东西,如:

templates/account 
1

事实证明,您只能覆盖django APP模板目录中的模板。不是主模板目录,即使正确配置。 并且该应用程序必须在settings.py中的所有allauth应用程序之前加载。

这很奇怪,因为allauth模板应该会影响站点范围的身份验证过程,而不仅仅是项目中的特定应用程序。 我最终创建了一个专门用于覆盖模板的应用程序“allauthapp”。