Я использую Django REST Framework для сериализации модели Django. У меня есть представление ListCreateAPIView, чтобы отображать объекты и представление RetrieveUpdateDestroyAPIView для извлечения/обновления/удаления отдельных объектов. Модель хранит информацию, которую пользователи представляют сами. Информация, которую они представляют, содержит некоторую конфиденциальную информацию и некоторую общедоступную информацию. Я хочу, чтобы все пользователи могли перечислить и получить общедоступную информацию, но я хочу, чтобы только владелец отображал/извлекал/обновлял/удалял личную информацию. Поэтому мне нужны разрешения для каждого поля, а не разрешения для объектов.
Самое близкое предложение, которое я нашел, было https://groups.google.com/forum/#!topic/django-rest-framework/FUd27n_k3U0, которое меняет сериализатор на основе типа запроса. Это не будет работать для моей ситуации, потому что у меня нет набора запросов или объекта в этот момент, чтобы определить, принадлежит ли он пользователю или нет.
Конечно, у меня есть интерфейс, который скрывает личную информацию, но умные люди все еще могут отследить запросы API, чтобы получить полные объекты. Если код необходим, я могу его предоставить, но мой запрос применяется к проектам Vanilla Django REST Framework.