簡體   English   中英

在 Django Admin 中查找站點的 site_id

[英]Finding the site_id of a Site in Django Admin

我正在將 Django AllAuth 安裝到我的項目中,並且在該應用程序的文檔中遇到了以下行(請參閱此處的文檔)

為您的域添加一個站點,匹配 settings.SITE_ID(django.contrib.sites 應用程序)。

不出所料,我的 settings.SITE_ID 是 1。 我如何在 Django Admin 中“匹配”這個? 我只有 2 個字段 - 域名和顯示名稱。

相反,如果我在管理員中創建一個站點,我怎么知道它的 site_id 是什么?

您可以在地址欄中找到site_id

顯示 Django 管理和感興趣的 url 的 Web 瀏覽器屏幕截圖

所以 settings.py 中的行將是: SITE_ID = 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 的美麗。

這對我有用:

user$ python manage.py shell --settings your-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$

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM