Size: a a a

Django [ru] #STAY HOME

2019 April 04

Z

ZHU in Django [ru] #STAY HOME
а что происходит
источник

Z

ZHU in Django [ru] #STAY HOME
в чем проблема что 321, 654 не сохроняются ? ошиька какая ?
источник

Z

ZHU in Django [ru] #STAY HOME
может это строки а должны быть числами
источник

YK

Yegor Kowalew in Django [ru] #STAY HOME
есть поле в модели, которое м2м на другой объект есть строка, в которой список имен другого объекта. Нужно создать из списка эти объекты и добавить их в поле
источник

AO

Alexander Ovchinnikov 🦁 in Django [ru] #STAY HOME
вообще, я бы посоветовал декомпозировать объёмные задачи на более мелкие, и дальше уже задавать вопрос по более мелким, конкретно

Я хочу сделать <что-то>. 
Я сделал <1.> <2.> <3.>.
Я получил <результат>.
А ожидал получить <другой результат>.


в таком формате ты быстрее получишь помощь) изучать портянки чужого кода обычно никому не интересно и поэтому советов будет мало)
источник

YK

Yegor Kowalew in Django [ru] #STAY HOME
ZHU
а что происходит
ничего не происходит ибо я не знаю как это написать
источник

YK

Yegor Kowalew in Django [ru] #STAY HOME
Alexander Ovchinnikov 🦁
вообще, я бы посоветовал декомпозировать объёмные задачи на более мелкие, и дальше уже задавать вопрос по более мелким, конкретно

Я хочу сделать <что-то>. 
Я сделал <1.> <2.> <3.>.
Я получил <результат>.
А ожидал получить <другой результат>.


в таком формате ты быстрее получишь помощь) изучать портянки чужого кода обычно никому не интересно и поэтому советов будет мало)
абсолютно согласен. Конкретизировал выше
источник

Z

ZHU in Django [ru] #STAY HOME
Yegor Kowalew
есть поле в модели, которое м2м на другой объект есть строка, в которой список имен другого объекта. Нужно создать из списка эти объекты и добавить их в поле
ну тут только сериализатор! поможет
источник

Z

ZHU in Django [ru] #STAY HOME
Создание вложенных сериализаторов
источник

Z

ZHU in Django [ru] #STAY HOME
ZHU
ну тут только сериализатор! поможет
источник

YK

Yegor Kowalew in Django [ru] #STAY HOME
ZHU
ну тут только сериализатор! поможет
тоесть судя по вашей логике в джанге нету средств для заполнения полей М2М?
источник

YK

Yegor Kowalew in Django [ru] #STAY HOME
Упрощаю максимально, есть два объекта модели OfficeNote.
Есть модель Order у которой поле otherofficenote = models.ManyToManyField(OfficeNote)
как эти два объекта добавить в это поле?
источник

Z

ZHU in Django [ru] #STAY HOME
Yegor Kowalew
тоесть судя по вашей логике в джанге нету средств для заполнения полей М2М?
сначала заполни OfficeNote
источник

Z

ZHU in Django [ru] #STAY HOME
после Order и привязыйвай по id
источник

Z

ZHU in Django [ru] #STAY HOME
а разом не получиться
источник

Z

ZHU in Django [ru] #STAY HOME
по привязке к id
как заполнишь OfficeNote.objects.list_value(‘id’, и значение). и значению получаешь id
источник

YP

Yevhenii Prontsevych in Django [ru] #STAY HOME
Yegor Kowalew
Упрощаю максимально, есть два объекта модели OfficeNote.
Есть модель Order у которой поле otherofficenote = models.ManyToManyField(OfficeNote)
как эти два объекта добавить в это поле?
источник

YK

Yegor Kowalew in Django [ru] #STAY HOME
именно в этом моменте я нихрена и не понял
источник

AA

Aleksandr Astashov in Django [ru] #STAY HOME
Yegor Kowalew
Упрощаю максимально, есть два объекта модели OfficeNote.
Есть модель Order у которой поле otherofficenote = models.ManyToManyField(OfficeNote)
как эти два объекта добавить в это поле?
Так как все связи в бд работают по ID записей, то как и говорит @Root0892 нужно сначала создать эти записи для получения ID.

notes_obj_list = [
OfficeNote.objects.create(<что-то_1>),
OfficeNote.objects.create(<что-то_2>),
]

order_obj = Order.objects.get(pk=<pk_который_Вы_знаете>)
order_obj.otherofficenote.add(*notes_obj_list)
источник

Z

ZHU in Django [ru] #STAY HOME
Aleksandr Astashov
Так как все связи в бд работают по ID записей, то как и говорит @Root0892 нужно сначала создать эти записи для получения ID.

notes_obj_list = [
OfficeNote.objects.create(<что-то_1>),
OfficeNote.objects.create(<что-то_2>),
]

order_obj = Order.objects.get(pk=<pk_который_Вы_знаете>)
order_obj.otherofficenote.add(*notes_obj_list)
Или через сертализатор намного легче
источник