Django的OneToOneField管理员不可编辑

时间:2017-04-26 00:54:33

标签: django django-admin

我已经完全剥离了我的代码,并留下了这些简单的模型:

models.py

class Member(models.Model):
    property = models.OneToOneField(Property, on_delete=models.CASCADE, blank=True, null=True)

class Property(models.Model):
    ....

这是Member的基本管理员:

admin.py

class PropertyAdmin(admin.ModelAdmin):
   pass
admin.site.register(Property, PropertyAdmin)

class MemberAdmin(admin.ModelAdmin):
    pass
admin.site.register(Member, MemberAdmin)

以超级用户身份登录管理员,正如Member管理页面上所预期的那样,我看到一个下拉列表,可以选择Property模型。如果已选择Property模型,则用于编辑所选Property模型的常用铅笔图标会淡出,因此我无法点击它。如何激活此图标,以便我可以通常弹出窗口来编辑此Property页面中的相关Member?我无法弄清楚我错过了什么。

谢谢!

2 个答案:

答案 0 :(得分:1)

您没有在admin中注册Property模型。

@admin.site.register(Property)
class PropertyAdmin(admin.ModelAdmin):
    pass

答案 1 :(得分:-1)

同意@Andrey Shipilov,

你也可以这样跟着。

class PropertyAdmin(admin.ModelAdmin):
    pass
admin.site.register(Property, PropertyAdmin)