gpt4 book ai didi

python - 主/详细页面的 Django 管理应用程序

转载 作者:太空狗 更新时间:2023-10-30 00:41:53 25 4
gpt4 key购买 nike

考虑 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()

有没有一种方法可以使用 admin 在同一页面上使用类似于以下形式的表单来编辑项目及其详细信息:

title:    <       >
pub_date: < >
details:
+-----------------+----------------------+-------------------------+
| name | value | diplay order |
+-----------------+----------------------+-------------------------+
|< >|< >|< >|
|< >|< >|< >|
|< >|< >|< >|
|< >|< >|< >|
|< >|< >|< >|
+-----------------+----------------------+-------------------------+

在哪里< >将是数据输入的输入类型的占位符。

那么,我的问题是:我可以使用管理员来编辑 foreign key 吗?从 parent 的角度看关系?如果没有办法以这种方式使用 Django 的管理员编辑数据,那么尝试扩展/自定义管理员来执行此操作是否是个好主意?有关如何执行此操作的任何说明?

谢谢!

最佳答案

这实际上是 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,
]

关于python - 主/详细页面的 Django 管理应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5161477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com