首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示所有模型实例,而不管django管理中的站点是什么

显示所有模型实例,而不管django管理中的站点是什么
EN

Stack Overflow用户
提问于 2014-12-02 21:15:00
回答 1查看 102关注 0票数 0

我启用了站点框架(包括中间件),并设置了两个站点(ID=1和ID=2)。我的模型之一使用外键的网站。为了争论起见,让我们说它看起来是这样的

代码语言:javascript
复制
class Person(models.Model):
    name = models.CharField(max_length=20)
    site = models.ForeignKey(Site)
    on_site = CurrentSiteManager()

在我的settings.py中,SITE_ID =1

如果我在管理屏幕中创建person实例,并使用ID=2将其站点设置为该站点,则会创建它,但它将隐藏在当前的管理屏幕中。

对我来说这似乎有悖常理。我想使用我唯一的django管理屏幕来管理我的两个站点。在我的list_display中,我有“站点”,所以如果它显示给我所有的实例,我就知道它与哪个站点相关。

是否有办法确保在管理屏幕中显示我的模型的所有实例,而不管站点ID是什么?

我不想登录到两个单独的管理URL来管理所有的模型实例。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-02 21:28:13

您实际上不需要CurrentSiteManager,只需将模型通过ForeignKey连接到站点;

代码语言:javascript
复制
from django.contrib.sites.models import Site
class Person(models.Model):
   name = models.CharField(max_length=20)
   site = models.ForeignKey(Site)
   on_site = models.ForeignKey(Site,related_name="site_users")

在管理中,您将看到一个下拉列表来选择Person应该属于哪个站点。

不要忘记迁移模型,因为您正在更改模式。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27259094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档