错误消息
<class 'app.inlines.ContactInline'>: (admin.E202) 'delegator.Contact' has no ForeignKey to 'delegator.Organisation'.
我打算在组织中以及在User(Member)中使用模型Contact,最后出现上面的错误消息。
models.py:
class Member(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
group = models.ForeignKey(Group,on_delete=models.CASCADE)
role = models.CharField(max_length=20,choices=ROLE_CHOICES)
contact_detail = models.OneToOneField(Contact,null=True,on_delete=models.SET_NULL)
class Organisation(TenantMixin):
key = models.CharField(max_length=24,unique=True)
type = models.CharField(max_length=3,choices=TYPE_CHOICES,default='LN')
name = models.CharField(max_length=128)
contact_detail = models.OneToOneField(Contact,on_delete=models.SET_NULL)
...
admin.py
@admin.register(Organisation)
class OrganisationAdmin(admin.ModelAdmin):
fields = ['key','type','name','domain_url','schema_name']
actions = ("export_as_csv",)
inlines = [ContactInline]
@admin.register(Member)
class UserAdmin(admin.ModelAdmin):
list_display = ('user','group','role')
inlines = [ContactInline]
inlines.py
class ContactInline(admin.StackedInline):
model = Contact
extra = 0
max_num = 1
fieldsets = [
(None,{'fields': ['address']}),(None,{'fields': ['zipcode','place']}),{'fields': ['country']}),{'fields': ['phone_landline','phone_mobile',]}),{'fields': ['website']}),]
这并非我所期望的。还可以在不为组织联系人和用户联系人创建两个额外模型并将它们与外键关系链接的情况下解决此问题吗?