У меня есть модель, которая содержит ManyToMany для пользователя, чтобы отслеживать, какие пользователи «предпочитают» конкретный экземпляр модели.Как получить доступ к request.user в классе Piston
В моем API-интерфейсе для этой модели, по просьбе пользователя, прошедшего проверку подлинности, я хотел бы добавить логическое значение 'is_favorite' boolean. Однако кажется, что любые поля api, которые не являются прямыми атрибутами модели, должны быть реализованы как метод класса, который при вызове в Piston не получает ссылку на объект запроса, и поэтому у меня нет способа узнать, кто текущий пользователь является.
Из документов Поршневые:
В дополнение к этому, вы можете определить любые другие методы, которые вы хотите. Вы можете использовать их, включив их имена в директиву полей, и при этом функция вызывается с помощью одного аргумента: экземпляр модели. Затем он может вернуть что-либо, и возвращаемое значение будет использоваться как значение для этого ключа.
Итак, если только методы Piston CRUD получают экземпляр запроса, как мои поля классов классов могут генерировать вывод, который имеет отношение к текущему аутентифицированному пользователю?
Приятное обходное решение для того, что, по-видимому, является недостатком API-поршней. Я думаю, что настоящий «правильный» ответ должен быть чем-то совершенно другим, но это сделало трюк, спасибо! –