Начиная с версии Django 3.* доступен метод get_inlines.
Допустим мы хотим показать Inline форму если пользователь находится в определенной группе.
admin.py
class YourInline(admin.TabularInline):
model = YourAnotherModel
extra = 0
@admin.register(YourModel)
class YourModelAdmin(admin.ModelAdmin):
inlines = []
...
def get_inlines(self, request, obj):
if obj is not None:
# if user in Врач group, display inline form
if obj.groups.filter(name='Название группы'').exists():
return [YourInline]
return []
Другие публикации из блога
Что такое сериализация (serialization) в Django?
Сериализация – это механизм перевода моделей Django в другие форматы, обычно текстовые (XML, JSON...).
Более под…
Подробнее
Не получается установить Pygame в Windows 10
При попытке установить pip install pygame Pygame в Windows 10 возникает ошибка.
Для решения проблемы установите dev …
Подробнее
Как посмотреть изменения между ветками (branches) на GitHub?
Для того чтобы увидеть изменения между ветками на GitHub добавьте /compare к ulr вашего репозитория:
https://githu…
Подробнее
Django не отображает статических файлов в режиме DEBUG=False
Для решения проблемы используйте --insecure
python manage.py runserver --insecure
или
django-admin runserver -…
Подробнее
Как предотвратить билд образа Docker из кэша?
При билде образа Docker создает кэши что не всегда бывает удобно и занимает много места на сервере. Для экономии места …
Подробнее
В чем отличие ref() от reactive() во Vue?
Идея в том что ref() задумывался для обозначения реактивных примитивов, а reactive() для реактивных объектов.
cons…
Подробнее