一尘不染

django管理员在修改obj时将字段设为只读,但在添加新obj时则要求

django

在管理员中,我想在修改对象时禁用字段,但是在添加新对象时将其设为必填字段。

django如何处理这个问题?


阅读 479

收藏
2020-04-01

共1个答案

一尘不染

你可以覆盖管理员的get_readonly_fields方法:

class MyModelAdmin(admin.ModelAdmin):

    def get_readonly_fields(self, request, obj=None):
        if obj: # editing an existing object
            return self.readonly_fields + ('field1', 'field2')
        return self.readonly_fields
2020-04-01