Форум сайта python.su
Здравствуйте. Решил попробовать в DRF.
У меня есть модель типа:
class PhoneNumber(models.Model): """ Номер телефона """ name = models.CharField( max_length=30, verbose_name='имя', ) number = models.CharField( max_length=50, verbose_name='телефон', ) polyclinic = models.ForeignKey( Polyclinic, on_delete=models.CASCADE, related_name='phone', )
{ "phone": [ { "name": "Регистратура", "number": "1234567" }, { "name": "Консультация", "number": "1234567" } ] }
{ "phone": [ { "Регистратура": "1234567" }, { "Консультация": "1234567" } ] }
Офлайн
Теоретически, с точки зрения программирования и данных такой формат неправилен.
Ведь JSON имеет структуру пара ключ:значение, где в общем смысле это равносильно название_переменной:ее значение.
Но если вам все таки хочется сделать так, то переопределите метод to_internal_value вашего сериализатора.
Ссылка на документацию
Где вы, будете раскладывать ключ и значение на правильный формат данных для работа сериализатора.
Офлайн
VANISHED
Отредактировано ntram (Окт. 13, 2022 15:55:28)
Офлайн
y_devЭто не так. Допустимы и списки и словари.
Ведь JSON имеет структуру пара ключ:значение
DmBandСделать можно, только выглядит странно. Может достаточно:
А можно ли сделать, чтобы было:
[ ["Регистратура", 1234567], ["Консультация", 1234567] ]
Отредактировано doza_and (Июль 25, 2022 22:58:17)
Офлайн
doza_andДа, вы правы. Так лучше выглядит
Сделать можно, только выглядит странно. Может достаточно:
doza_andТам более глубокая вложенность, чем я здесь показал. Поэтому, чтобы лучше читалось, сделал эту обертку.
Зачем обертка с ‘'phone’?
Офлайн