IP
和System
有一对一的关系。
我已创建自定义表单
class SystemAdminForm(ModelForm):
address = ModelChoiceField(IP.objects.filter(system=None))
class Meta:
model = System
这就是我现在正在使用它的方式。
class SystemAdmin(ModelAdmin):
form = SystemAdminForm
我想要两件事:
IP
字段不应显示,地址字段不能显示+按钮。
我该怎么做?
class IPAdmin(ModelAdmin):
fields = ['name', 'ip']
def has_add_permission(self, request):
return True
class SystemAdmin(ModelAdmin):
form = SystemAdminForm
def has_add_permission(self, request):
return True
admin.site.register(System, SystemAdmin)
admin.site.register(IP, IPAdmin)
答案 0 :(得分:1)
我认为这是删除ip字段的解决方案:
class Meta:
model = System
exclude = ["ip"]
要使用+按钮,您需要在AddressAdmin中覆盖此功能
class AddressAdmin(ModelAdmin):
def has_add_permission(self, request):
return True
admin.site.register(Adress, AddressAdmin)