通过向本地预览端口 URL 添加标准
admin/
扩展名来打开管理面板。预计这将导致经典的 django 管理面板。
网站显示正常。
目前正在实施简单的谷歌誓言登录。
DoesNotExist at /admin/login/
Site matching query does not exist.
Request Method: GET
Request URL: http://8000-lmcrean-project4-avaw7dd1zq8.ws-eu106.gitpod.io/admin/login/?next=/admin/
Django Version: 3.2.23
Exception Type: DoesNotExist
Exception Value:
Site matching query does not exist.
Exception Location: /workspace/.pip-modules/lib/python3.9/site-packages/django/db/models/query.py, line 435, in get
Python Executable: /home/gitpod/.pyenv/versions/3.9.17/bin/python3
Python Version: 3.9.17
Python Path:
['/workspace/Project-4',
'/home/gitpod/.pyenv/versions/3.9.17/lib/python39.zip',
'/home/gitpod/.pyenv/versions/3.9.17/lib/python3.9',
'/home/gitpod/.pyenv/versions/3.9.17/lib/python3.9/lib-dynload',
'/workspace/.pip-modules/lib/python3.9/site-packages',
'/home/gitpod/.pyenv/versions/3.9.17/lib/python3.9/site-packages']
Server time: Sat, 11 Nov 2023 15:17:58 +0000
“设置 Google 登录以获得更快的 Django 登录体验。与蒂姆一起技术。” Akamai DevRel,YouTube 视频,2022 年 12 月 12 日,https://youtu.be/yO6PP0vEOMc?feature=shared&t=1328。访问日期:2023 年 11 月 11 日。
已安装的应用程序在 settings.py 上似乎没问题 - 可以在此处查看完整内容
这是最近实现的,但根据教程是正确的:
AUTHENTICATION_BACKENDS = (
"django.contrib.auth.backends.ModelBackend",
"allauth.account.auth_backends.AuthenticationBackend"
)
urls.py 中的 urlpatterns
urlpatterns = [
path('admin/', admin.site.urls),
path("", include("blog.urls"), name="blog-urls"),
path('summernote/', include('django_summernote.urls')),
path("accounts/", include("allauth.urls")),
path("", include("users.urls"))
]
当 settings.py 中的 SITE_ID 设置引用数据库中不存在的 Site 对象时,Django 中通常会出现错误消息“站点匹配查询不存在”。
我通过检查现有站点 ID 设法使用 Python Shell 调试此问题。
from django.contrib.sites.models import Site
existing_site = Site.objects.get(domain='http://127.0.0.1:8000')
print(existing_site.id)
返回语句显示 SITE_ID 应为 2,而不是之前设置的 1。
已通过更新 settings.py 以匹配正确的站点 ID 来修复此问题:
SITE_ID = 2