Django管理员申请主/详细页面

Pab*_*ruz 5 python django django-admin

在Django中考虑这个简化模型:

class Item(models.Model):
    title = models.CharField(max_length=200)
    pub_date = models.DateTimeField()

class ItemDetail(models.Model):
    item = models.ForeignKey(Item)
    name = models.CharField(max_length=200)
    value = models.CharField(max_length=200)
    display_order = models.IntegerField()
Run Code Online (Sandbox Code Playgroud)

有没有办法使用管理员编辑一个项目及其在同一页面上的详细信息,其形式类似于:

title:    <       >
pub_date: <       >
details:
+-----------------+----------------------+-------------------------+
|       name      |        value         |      diplay order       |
+-----------------+----------------------+-------------------------+
|<               >|<                    >|<                       >|
|<               >|<                    >|<                       >|
|<               >|<                    >|<                       >|
|<               >|<                    >|<                       >|
|<               >|<                    >|<                       >|
+-----------------+----------------------+-------------------------+
Run Code Online (Sandbox Code Playgroud)

< >数据输入的输入类型的占位符在哪里.

所以,我的问题是:我可以使用admin foreign key从父母的角度编辑关系吗?如果没有办法用这种方式用Django的管理员编辑数据,那么尝试扩展/自定义管理员这样做是不是一个好主意?关于如何做到这一点的任何指示?

谢谢!

Yuj*_*ita 10

这实际上是django善于处理关系的唯一方向 - 反过来更难(直接编辑孩子的相关父母).

要获得所需的格式,请查看ModelAdmin内联:http://docs.djangoproject.com/en/dev/ref/contrib/admin/#django.contrib.admin.InlineModelAdmin

class ItemDetailInline(admin.TabularInline):
    model = ItemDetail

class ItemAdmin(admin.ModelAdmin):
    inlines = [
        ItemDetailInline,
    ]
Run Code Online (Sandbox Code Playgroud)