Динамически за исключением полей в инлайн Джанго администратора

Обновить

March 2019

Просмотры

1k раз

1

Я хочу, чтобы исключить некоторые поля в моем инлайн на основе моего запроса пользователя.

Я знаю, что-то я могу справиться с этим с помощью методов, таких как «get_formsets», «add_view», «change_view», но я не уверен, что синтаксис.

Какие-либо предложения?

1 ответы

2

I achieved what I needed with the next code in my inline class:

def get_formset(self, request, obj=None, **kwargs):
        if request.user.groups.all().count() > 0:
            if request.user.groups.all()[0].name == 'User Group Name':
                kwargs['exclude'] = ['field_to_exclude',]
        return super(MyInline, self).get_formset(request, obj, **kwargs)

The answer to this question gave me the hints: different fields for add and change pages in admin