170 похожих чатов

Добрый день. Подскажите, как реализовать Serialazer... У меня есть модель,

где есть необязательные поля. Как мне вернуть при обращение к api, только те поля, которые не равны null?

Сама модель:
https://pastebin.com/32QKWHw7

Заранее благодарю.

12 ответов

15 просмотров

прочитай про extra_kwargs

Андрей-🐍 Автор вопроса

Прочитал. Но немного не понял, как его применить.

{'field': {'required': False, 'allow_null': True}} примерно так, в зависимости от твоих нужд

Андрей-🐍 Автор вопроса

Понял. Пойду почитаю про аргументы.

Андрей-🐍 Автор вопроса

Кхм... Он всё равно выводит поле со значением null. "manufacturer": null, class Meta: model = Product fields = '__all__' extra_kwargs = {'manufacturer': { 'required': False, 'allow_null': True}} Указывал поля явно - всё равно не работает.

"manufacturer": null, что это за поле?

Андрей-🐍 Автор вопроса

Это ответ api* С английского - производитель.

а лол затупил)

так а в чем проблема?

Так allow_null = False, может?

Андрей-🐍 Автор вопроса

Я ожидаю немного другого результата, мне API не должно отдавать поля, значения которых null.

Андрей-🐍 Автор вопроса

Из документации: Обычно возникает ошибка, если в поле сериализатора передается None. Установите для этого аргумента ключевого слова значение True, если значение None следует считать допустимым. Обратите внимание, что без явного значения по умолчанию установка для этого аргумента значения True будет подразумевать значение по умолчанию null для вывода сериализации, но не подразумевает значение по умолчанию для десериализации ввода. По умолчанию False Либо я документацию не понимаю.

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта