如何更改Inline类中字段的选择?我不能在Inline中使用formfield_for_choice_field,那么要使用什么? 我必须在管理员中生成它,因为我需要通过请求。Django的管理员 - 如何改变内联的选择?
class YourInline(admin.StackedInline): # or TabularInline
model = YourModelName
def formfield_for_choice_field(self, db_field, request=None, **kwargs):
if db_field.name == 'YOUR_FIELD_NAME':
kwargs['choices'] = (('', '---------'), ('1', 'Choice1'), ('2', 'Choice2'))
return db_field.formfield(**kwargs)
好运
内联使用简单的表单,因此您可以使用该表单进行任何操作。你究竟在做什么? – ilvar 2012-04-18 04:05:13
我需要更改内联1字段的选择列表。我不能在模型中这样做,因为我必须使用请求来检查管理员中的用户权限和注册模型。是否可能以某种方式将请求传递给窗体,然后在自定义内联窗体中对该字段进行一些修改? – tunarob 2012-04-18 06:27:49
它是你的领域的一个外键? – eos87 2012-04-18 16:33:22