【发布时间】:2013-01-11 20:16:57
【问题描述】:
我想根据“lock_slug”等其他字段值将 slug 字段设为 read_only。
意味着会有两个条件。
1) 当 "lock_slug" 的值为 false 时,slug 字段直接从字段 "title" 中预填充。
prepopulated_fields = {"slug": ("title",),}
2) 当 "lock_slug" 的值为 true 时,slug 字段设为只读。
def get_readonly_fields(self, request, obj = None):
if obj and obj.lock_slug == True:
return ('slug',) + self.readonly_fields
return self.readonly_fields
这两个单独工作很好,但同时使用时会出现问题。
意味着当我尝试在编辑时添加 get_readonly_fields() 时,由于 prepopulated_fields 会出错。这两个相互崩溃。
将有任何解决方案可以在管理员方面工作。
我也参考下面的链接
Making a field readonly in Django Admin, based on another field's value
django admin make a field read-only when modifying obj but required when adding new obj
但不能同时使用这两个。
谢谢,
米纳克什
【问题讨论】:
标签: django-admin