Size: a a a

Сообщество Python Программистов

2021 January 10

in Сообщество Python Программистов
Так, я перепутал
У тебя связь один ко многим, ты через А не сможешь достучаться к конкретному В просто как к атрибуту
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
AstralRomance
Хм, а тогда еще вопрос, надеюсь, последний. Вот есть у меня две модели, связаны через ForeignKey типа:
class modelA(models.Model):
 <smth>

class modelB(models.Model):
 <smth>
 modelAID = models.ForeignKey('modelA', on_delete=models.CASCADE)
Во вьюхе мне нужно найти модель modelA по айдишнику (с этим, тащемта, все норм, она находится), а потом создать запись modelB.
Я делаю:
<view declare>
 model_a = modelA.objects.get(id=id)
 model_a.modelB.field = data
 model_a.save()
Про это в доке читал, но, видимо, снова читал жопой, потому что жанга мне говорит, что такого атрибута у моей штуки нет.
1. Нахуя ты делаешь ModelAID, если можешь ModelA_field.
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
AstralRomance
Хм, а тогда еще вопрос, надеюсь, последний. Вот есть у меня две модели, связаны через ForeignKey типа:
class modelA(models.Model):
 <smth>

class modelB(models.Model):
 <smth>
 modelAID = models.ForeignKey('modelA', on_delete=models.CASCADE)
Во вьюхе мне нужно найти модель modelA по айдишнику (с этим, тащемта, все норм, она находится), а потом создать запись modelB.
Я делаю:
<view declare>
 model_a = modelA.objects.get(id=id)
 model_a.modelB.field = data
 model_a.save()
Про это в доке читал, но, видимо, снова читал жопой, потому что жанга мне говорит, что такого атрибута у моей штуки нет.
2. Где related_name у ModelB?
источник

in Сообщество Python Программистов
𝕬𝖗𝖙𝖊𝖒
2. Где related_name у ModelB?
Не обязательно
источник

A

AstralRomance in Сообщество Python Программистов
𝕬𝖗𝖙𝖊𝖒
1. Нахуя ты делаешь ModelAID, если можешь ModelA_field.
Я хочу искать нужную мне херовину по айди, а не по полю.
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
Не обязательно
А как он по твоему с модели А к модели Б обратится
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
AstralRomance
Я хочу искать нужную мне херовину по айди, а не по полю.
В фильтре дописываешь __id
источник

in Сообщество Python Программистов
𝕬𝖗𝖙𝖊𝖒
А как он по твоему с модели А к модели Б обратится
У него есть А и он обращается к В как к полю
источник

in Сообщество Python Программистов
А надо по-другому
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
AstralRomance
Я хочу искать нужную мне херовину по айди, а не по полю.
1. У тебя нет related_name в FK
2. У тебя ФК это айди
Пофикси это и всё будет ок
источник

in Сообщество Python Программистов
model_a.models_b_related_name.objects.filter(...)
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
model_a.models_b_related_name.objects.filter(...)
Упадёт
источник

in Сообщество Python Программистов
model_a.models_b_related_name.objects.filter(...)
надо спать, я что-то не то написал
источник

in Сообщество Python Программистов
во
источник

in Сообщество Python Программистов
article это форен кей к репортеру
источник

A

AstralRomance in Сообщество Python Программистов
𝕬𝖗𝖙𝖊𝖒
1. У тебя нет related_name в FK
2. У тебя ФК это айди
Пофикси это и всё будет ок
Ну вот я добавил related_name, при обращении через него я получил 200 ответ, а в админке моих записей под моделью B нет...
источник

in Сообщество Python Программистов
сет моделей В достаёшь так: model_a.modelB_set.all()
источник

A

AstralRomance in Сообщество Python Программистов
сет моделей В достаёшь так: model_a.modelB_set.all()
А в админку они сами тянуться не должны?
источник

in Сообщество Python Программистов
AstralRomance
А в админку они сами тянуться не должны?
Как инлайны?
источник

𝕬

𝕬𝖗𝖙𝖊𝖒 in Сообщество Python Программистов
AstralRomance
Ну вот я добавил related_name, при обращении через него я получил 200 ответ, а в админке моих записей под моделью B нет...
Блять. Давай без этих моделей А, Б, В, Хуй, Жопа, Пизда и решений на коленке. Распиши саму задачу, ибо это пиздец, мы трое друг друга хер понимаем
источник