我正在将Django AllAuth安装到我的项目中,并在该应用程序(see docs here)的文档中遇到以下行:
为您的域添加网站,匹配settings.SITE_ID(django.contrib.sites app)。
我的settings.SITE_ID为1,不足为奇。如何在Django Admin中“匹配”这个?我只有2个字段 - 域名和显示名称。
相反,如果我在管理员中创建一个网站,我怎么知道它的site_id是什么?
答案 0 :(得分:10)
答案 1 :(得分:3)
转到您拥有manage.py文件的项目路径,然后按照以下步骤操作:
在终端中运行以下命令
python manage.py shell
然后在python shell中输入:
from django.contrib.sites.models import Site
new_site = Site.objects.create(domain='....', name='....')
print new_site.id
此打印值将是站点匹配查询的site_id 如果你仍然被击中,请回复。我将引导您到非常简单的步骤,享受django allauth的美丽。
答案 2 :(得分:1)
这对我有用:
user$ python manage.py shell --settings you-settings.py
[ ... banner ... ]
>>>
>>> from django.contrib.sites.models import Site
>>>
>>> sorted([(site.id,site.name) for site in Site.objects.all()])
[(1, u'www.lvh.me'), (2, u'example.com'), (3, u'www.example.com'),...]
>>>
>>> quit()
user$
我希望它有所帮助。 (◠﹏◠)