2016-12-14 131 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」。