Size: a a a

Django [ru] #STAY HOME

2021 June 05

I

InzGIBA in Django [ru] #STAY HOME
В PostSerializer добавь category = CategorySerializer()
источник

А

Артем in Django [ru] #STAY HOME
ну я хотел чтоб при добавлении матча генерировались билеты
источник

Y

Your friend in Django [ru] #STAY HOME
если я ставлю выше CategorySerializer - он жалуется на то, что не может найти PostSerializer. если PostSerializer - жалуется на отсутствие CategorySerializer. Как решить эту проблему?)
источник

DT

Dan Tyan in Django [ru] #STAY HOME
а по факту на каждое сохранение
источник

I

InzGIBA in Django [ru] #STAY HOME
Скинь код в гист
источник

Y

Your friend in Django [ru] #STAY HOME
источник

I

InzGIBA in Django [ru] #STAY HOME
Сделай сигнал, при created true в post save генерацию
источник

I

InzGIBA in Django [ru] #STAY HOME
Сделай просто CategoryInlineSerializer без posts внутри, но выше PostSerializer
источник

Y

Your friend in Django [ru] #STAY HOME
спасибо большое! сработало)
источник

I

InzGIBA in Django [ru] #STAY HOME
Не за что, лучше не перезагружать так сказать “inline” сериализаторы, ибо множественное вложение выглядит ужасно
источник

g

garrip91 in Django [ru] #STAY HOME
Сработало, спасибо
источник

A

Aquinary in Django [ru] #STAY HOME
> что значит список моих друзей?
Имеется Пользователь А. У Пользователя А могут быть входящие заявки в друзья (Пользователь А получает заявки от других пользователей)
У Пользователя А могут быть исходящие заявки в друзья (Пользователь А отправляет заявку/заявки другим пользователям/пользователю)
> что значат поля фром и ту?
Поля friend_from friend_to определяет направление заявки, *кто* и *кому" отправляет заявку, соответственно определяет исходящий/входящий список заявок для отображения на фронте
> зачем получаются и те и другие?
Потому что Пользователь А может быть как в поле  friend_from, так и в поле friend_to в зависимости от того, отправлял ли Пользователь А сам заявку или принимал чью-то чужую, именно поэтому фильтрация идёт сразу по двум полям (через тот самый Q)

Q там есть (видимо сниппет даже не открывался). В этом и беда, что я своей глупой головой не соображу как верно составить запрос, чтобы он:
1. Вернул мне список друзей, основанный на фильтрации по полю friend_from friend_to в зависимости от направления движения (см. скриншот, у Пользователя А три друга, но из-за разного направления заявок я вынужден проверять самого Пользователя А по двум полям сразу)
2. Унифицировал название полей до username, вместо friend_from__username

Там орм очень похожа на джанго, поэтому если бы мне скинули пример реализации, я бы мог легко это адаптировать под себя
источник

A

Aquinary in Django [ru] #STAY HOME
источник

A

Aquinary in Django [ru] #STAY HOME
Кое-как это было сделано через цикл, но это выглядит так, словно я вместо цемента кирпичную кладку делаю с помощью говна. Вроде та же субстанция, кирпичи липнут, но по сути то ерунда полная выходит)
источник

Y

Your friend in Django [ru] #STAY HOME
Ребят, еще один вопрос возник:
Пишу update для ViewSet. Хочу включить все поля для изменения, кроме одного. Как можно исключить его из этого? Написать отдельный сериалайзер?
источник

Z

ZR in Django [ru] #STAY HOME
А что плохого в скринах, в нормальных,  срезанных
источник

S

Shodmon in Django [ru] #STAY HOME
ты наверное не заметил, но кью который я указал имеет ~
2. также, ты можешь попробовать юзнуть эксклуд перед твоим фильтром
источник

NC

Nikolay Cherniy in Django [ru] #STAY HOME
В скринах много всего плохого, а в пасте много всего хорошего )) например ты сидя с плохим интернетом сам решаешь открыть ссылку или нет, а при открытии это не засоряет твое устройство, а желая помочь можешь легко копировать код и поправить нужные места, или скопировать и загуглить, догадываясь, что человек задавший вопрос не догадался это сделать. А еще когда одному человеку говорят, ну ок в твоем случае можно и скрин - 10 других думают - а я чем хуже...
источник

Z

ZR in Django [ru] #STAY HOME
хз, как знаете... КАк по мне, так скрины и пасты топ (миксы)
источник

S

Shodmon in Django [ru] #STAY HOME
как-то так

.filter(
Q(friend_from__username=username_or_email), ~Q(friend_to__username=username_or_email) | Q(friend_to__username=username_or_email), ~Q(friend_from__username=username_or_email)
)

естественно вместо юзернеймов где ~ ставишь "текущего" юзера (того чьих друзей ищешь)
не, юзай как написал
источник