ShareListCreateSerializer(serializers.ModelSerializer):
email = serializers.EmailField()
class Meta:
model = models.SharedTable
fields = ('id', 'email', 'expired', 'file', 'permissions',)
read_only_fields = ('id',)
Поля email нет у модели SharedTable.
Я его использую в create, чтобы достать пользователя базы.
И когда я потом сохраняю инстанс модели, у меня выкидывает
Got AttributeError when attempting to get a value for field `email` on serializer `ShareListCreateSerializer`.
The serializer field might be named incorrectly and not match any attribute or key on the `SharedTable` instance.
Original exception text was: 'SharedTable' object has no attribute 'email'.
Я понимаю что там нет этого поля, но для чего он его пытается использовать, и как избежать такой ситуации?
Гэээряяяязь. У тебя сериалайзер один работает как request, как перегонка для фронта, и еще и данные создает. Это правда удобно?
ну смотри. Логика шеринга файлов - указать емейл пользователя, по которому бекенд уже найдет пользователя.
сделай поле write_only?
Спасибо. Попробую.
Обсуждают сегодня