base.html работает для всех других URL-ссылок, но как только я загружаю localhost:8000/accounts/ (например, выход из системы или вход в систему), шаблон css вообще не работает. Функциональность все еще работает, просто css не работает.
Это согласно учебнику (с 8:22 до 10:44): https://thewikihow.com/video_bopkZBbIa7c. Я следил за учебником шаг за шагом, но он дает другой результат, чем учебник. (Просто хочу повторить, что функциональность в порядке, просто django css)
Мои текущие настройки .py:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'tinymce',
'posts',
'django.contrib.sites',
'allauth',
'allauth.account',
'allauth.socialaccount',
]
URL-адреса:
urlpatterns = [
path('admin/', admin.site.urls),
path('', index),
path('blog/', blog, name='post_list'),
path('post/<id>', post, name = 'post_detail'),
path('search/', search, name = 'search'),
path('tinymce/', include('tinymce.urls')),
path('accounts/', include('allauth.urls')),
path('accounts/profile/', blog, name='post_list')
]
Любая помощь будет оценена по достоинству. Спасибо.
Джанго версии 3.1.4 Питон 3
Вот загруженный веб-файл. pasteboard.co/JEY90qw.png
1. Причина: allauth
login.html использует собственный base.html
.
Джанго будет искать пакет allauth login.html
в allauth
. Вы можете проверить это под
myvenv/lib/python3.7/site-packages/allauth/templates/account/login.html
Шаблон в этой папке будет использовать base.html
из allauth
, расположенных по адресу:
myvenv/lib/python3.7/site-packages/allauth/templates/
не тот, который вы создали под /templates
.
2. Как заставить allauth
's login.html использовать свой base.html
?
я предполагаю, что
templates
.TEMPLATES=[
'DIRS': [BASE_DIR.joinpath('templates')],
'APP_DIRS': True,
Затем вы создадите папку с именем account
и поместите в нее login.html
.
templates/account/login.html
Теперь, когда django ищет шаблон login.html
, он сначала будет искать templates/account/login.html
, а не шаблон пакета allauth. В этом случае в шаблоне будет использоваться your own base.html
.
Спасибо за Ваш ответ. У меня возникли проблемы с поиском ...site-packages/allauth
в моем каталоге, как показано на изображении ниже pasteboard.co/JEXRLBk.png Любая помощь будет оценена. Кроме того, я проверил зависание pip3 и не нашел allauth. Не слишком уверен, что это актуально.
Я не мог найти это изображение, которое вы показали. не могли бы вы поискать allauth
или account
или socialaccount
?
странно, что здесь у вас тоже нет "tinymce".
Привет, ха-ныль, изображение находится в ссылке на монтажный стол в комментарии. Что касается папок allauth, учетной записи или социальной учетной записи, похоже, их нет в каталоге моего проекта (поиск с помощью ctrl + p). Странно, но проект отображает полную функциональность импортированных библиотек.
Мои извинения, кажется, что в pip3 заморозке allauth и tinymce находятся там под django-allauth и django-tinymce.
Можете ли вы убедиться, что ваш сайт действительно загружает css и не получает ошибку 404 или аналогичную, используя вкладку сети?