动态限制Django管理员中显示的内联模型字段

时间:2014-04-20 01:55:11

标签: django dynamic django-admin inline-formset

我正在尝试根据另一个字段('configuration')的值从我的模型中显示某些字段('item_1','item_2')。该模型在Django管理员中以内联方式显示。我已经尝试了下面的代码,但管理员没有任何变化。检测“配置”的值似乎有效,但不是排除。作为旁注,我正在使用Django Suit管理皮肤。

class LayoutForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super(LayoutForm, self).__init__(*args, **kwargs)
        configuration = self.instance.configuration
        if configuration == '2d':
            class Meta:
                exclude = ['item_1','item_2']

class LayoutInline(SortableTabularInline):
    model = Layout
    sortable = 'order'
    extra = 0
    form = LayoutForm

class ModuleAdmin(SortableModelAdmin):
    inlines = [LayoutInline]

admin.site.register(Module,ModuleAdmin)

0 个答案:

没有答案