У меня есть довольно большой CMS с большим количеством модулей и я регулирование доступа с правами Джанго. Каждое приложение имеет модель UserProfile с объектом User как ForeignKey. Я хочу иметь возможность разрешить простой поиск и создание объектов UserProfile в каждом приложении. Я хотел использовать Внутристрочный, чтобы сделать это, как это (от проекта/приложение/admin.py):Регистрация той же модель в различных конфигурациях для различных приложений с Django администратором
class InlineModelForUser(admin.TabularInline):
model = User
extra=0
class UserSettings(admin.ModelAdmin):
search_fields = ['username', 'name']
readonly_fields = ['username','name', 'otherproperites']
inlines = [InlineModelForUser,]
admin.site.register(User, UserSettings)
Ошибки возвращаемым: «Модель пользователь уже зарегистрирован». Я понимаю, почему это происходит, и я ценю, что я, вероятно, могу реализовать ту же функциональность по-другому. То, что я пытаюсь достичь, - это отделить редактирование базового объекта (Пользователь) и прикрепленного объекта профиля приложения. Я вижу, конечно, что я могу сделать поле автозаполнения в CreateView для UserProfile, но иногда вам необходимо предоставить различные инструменты фильтрации для каждого приложения (фильтрация/против свойств пользователя) и необходимость скрыть некоторую информацию пользователя от пользователей каждое приложение.
В принципе: Как я в django.contrib.admin может построить несколько представлений в отношении одной и той же модели и зарегистрировать его с admin.site.register?
Что еще отсутствует в том, что прокси-объект необходим свой собственный набор разрешений. Я не совсем уверен, как вам лучше всего это реализовать. Я делаю это вручную для этого прецедента, который я решаю, но отчитаюсь, если найду что-то элегантное. –