我正在学习django,并决定使用django-allauth进行用户注册。我目前只想要本地帐户(我从settings.py中排除了社交身份验证)。
当我访问/accounts/login
时,我收到以下错误:
你正在使用Django“站点框架”而没有设置 SITE_ID设置。在数据库中创建一个站点并设置SITE_ID 设置以修复此错误。
官方Django文档说:
django_site数据库中当前站点的ID(整数) 表。这用于使应用程序数据可以挂钩到特定的 站点和单个数据库可以管理多个站点的内容。
但我不太明白这一点。现在我只是在开发环境中运行django,通常只需要python manage.py runserver
运行就可以运行,我可以测试我的应用程序。
如何解决本地帐户的SITE_ID
问题?解决方案在生产/开发环境中会有所不同吗?
答案 0 :(得分:30)
在您的设置中添加“SITE_ID = 1”会让您超越异常 无需将其添加到INSTALLED_APPS。它对我有用。
答案 1 :(得分:1)
FYI。在Django v1.6中更改了启用站点框架的详细信息,请参阅此处... https://docs.djangoproject.com/en/1.6/ref/contrib/sites/
将&#39; django.contrib.sites&#39;添加到您的INSTALLED_APPS后,将在数据库中创建域名,id = 1,domain = example.com,name = example.com。< / p>