Python django嵌套内联线,有解决方法吗?
我想在admin中编辑一个模型,该模型具有另一个模型的外键,该模型又具有基础模型的外键:Python django嵌套内联线,有解决方法吗?,python,django,nested,inline,Python,Django,Nested,Inline,我想在admin中编辑一个模型,该模型具有另一个模型的外键,该模型又具有基础模型的外键: from django.contrib import admin from .models import Role from .models import Address from .models import Date from .models import Person from .models import Name # Register your models here. admin.site.
from django.contrib import admin
from .models import Role
from .models import Address
from .models import Date
from .models import Person
from .models import Name
# Register your models here.
admin.site.register(Role)
admin.site.register(Address)
admin.site.register(Date)
#admin.site.register(Name)
#admin.site.register(Person)
class RoleInline(admin.TabularInline):
model=Role
extra=3
class NameInline(admin.TabularInline):
model=Name
extra=3
class PersonInline(admin.ModelAdmin):
fieldsets=[
(None,{'fields': ['mail','firstName','lastName','phoneNumber','streetAdress','zipcode','city']}),
]
inlines = [RoleInline,Name]
search_fields = ['firstName']
#admin.site.register(Name,NameInline)
admin.site.register(Person,PersonInline)
这就是模型:
class Role(models.Model):
role=models.CharField(max_length=200)
person=models.ForeignKey(Person,on_delete=models.CASCADE)
def __str__(self):
return self.role
class Meta:
ordering = ('role',)
class Name(models.Model):
name=models.CharField(max_length=200)
role=models.ForeignKey(Role,on_delete=models.CASCADE)
def __str__(self):
return self.name
class Meta:
ordering = ('name',)
class Address(models.Model):
name=models.ForeignKey(Name,on_delete=models.CASCADE)
street=models.CharField(max_length=200)
city=models.CharField(max_length=200)
mail=models.EmailField()
phone=PhoneNumberField()
def __str__(self):
return self.name
class Meta:
verbose_name_plural = "addreses"
class Meta:
ordering = ('name',)
class Date(models.Model):
date=models.DateField()
location=models.ManyToManyField(Address)
问题是名称与角色相关,而不是直接与个人相关,即角色对个人有外键,名称对角色有外键,这必须添加到我使用的管理员页面中。
django中缺少嵌套的内联线,是否有解决方法?这是一个什么问题(请解释),您的模型是什么样子的?(复制问题所需的最少代码)添加了模型。关键是,当使用内联添加另一个模型进行编辑时,我必须将外键关系添加到角色。这个“名称”模型的实际意义是什么?每个人都有一个或多个角色,每个角色都有一个或多个名称,就像亚当是艺术家,也是演员,作为演员,他被称为“伟大的亚当”作为一名艺术家,他被称为“艺术家亚当”。这有意义吗?嗯,有点是的。。。如果不知道规格和域模型,很难说。但我想知道为什么地址与
名称关联?