【发布时间】:2010-12-20 06:52:45
【问题描述】:
我无法让管理模块以一对一的关系内联两个相同的字段模型。为了说明这一点,我做了以下示例,模型 Person 使用两个地址:
class Client(models.Model):
# Official address
official_addr = models.OneToOneField(Address, related_name='official')
# Temporary address
temp_addr = models.OneToOneField(Address, related_name='temp')
我想启用通过 Django 管理界面添加人员,并内联两个地址。到目前为止,我有这个用于管理配置的代码:
class ClientInline(admin.StackedInline):
model = Client
fk_name = "official_addr"
class ClientInline2(admin.StackedInline):
model = Client
fk_name = "temp_addr"
class AddressAdmin(admin.ModelAdmin):
inlines = [ClientInline,ClientInline2]
admin.site.register(Address, AddressAdmin)
它对第一个地址非常有效,但是对于两个地址,界面都表现得很疯狂——复制客户的字段而不是地址。我做错了什么?有更好的方法来内联两个相同的模型吗?
【问题讨论】:
-
不应该是Client而不是Clent吗?
标签: django django-admin