我阅读了许多不同的设置,以便让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 /帐户
尽管所有allauth模板都提取了网站的基本模板,但对tis目录中模板的任何修改都会被忽略。如果您使用django 1.8,请描述您的设置。
答案 0 :(得分:3)
要覆盖模板,您必须在模板文件夹中放置一个包含应用程序名称的文件夹。在你的情况下,你想要像:
templates/account
答案 1 :(得分:2)
事实证明,您只能覆盖django APP模板目录中的模板。即使配置正确,也不是主模板目录。 并且必须在settings.py。
中的所有allauth应用之前加载该应用这很奇怪,因为allauth模板应该影响站点范围的身份验证过程,而不仅仅是项目中的特定应用程序。 我最终创建了一个专门用于覆盖模板的应用程序“allauthapp”。