【问题标题】:Django admin site -- list ForeignKey items as change-list on change pageDjango 管理站点——在更改页面上将 ForeignKey 项目列为更改列表
【发布时间】:2013-02-23 21:35:18
【问题描述】:

在我的项目(玩具版)中,有拥有任意数量对象的所有者。我的models.py 文件看起来像

class Owner(models.Model)
    name = models.CharField(max_length=50)
    date_of_birth = models.DateField()

class Object(models.Model)
    name = models.CharField(max_length=50)
    price = models.models.DecimalField(max_digits=9, decimal_places=2)
    owner = models.ForeignKey(Owner)

我的问题与管理站点上所有者的更改页面有关,例如

http://mysite.com/admin/myapp/owner/1/.

现在我知道,如果我将Object 注册为TabularInlineStackedInline,那么我会得到一个此所有者拥有的对象的可编辑列表。然而,在我的项目的真实版本中,Object 有 25 个字段,而不是 2 个,因此从美学角度来看,这些选项都不是真正可取的。

我真正想要的是在所有者的更改页面上显示所有者拥有的所有对象的更改列表。 (这样我得到了所有所有者对象的一个​​很好的紧凑列表,如果我需要编辑一个的详细信息,我可以点击它的链接并在它自己的页面中编辑它。)基本上我想要的内容

http://mysite.com/admin/myapp/object/?owner__id__exact=1

出现在

http://mysite.com/admin/myapp/owner/1/.

有没有办法做到这一点?

PS:我使用的是 Django 1.4 和 Python 2.7。

【问题讨论】:

    标签: django django-models django-admin changelist


    【解决方案1】:

    您可以使用these attributes 定义要在每个 InlineModelAdmin 中使用的表单类和/或字段,并以此方式限制每个对象的输入字段数量。

    【讨论】:

      猜你喜欢
      • 2012-03-23
      • 2011-01-12
      • 2011-08-05
      • 1970-01-01
      • 2014-01-11
      • 2011-06-15
      • 1970-01-01
      • 1970-01-01
      • 2010-11-21
      相关资源
      最近更新 更多