Два года в /fg/. Войти !bnw Сегодня Клубы
Чят, вот есть у меня документ `Post` с полем list из `Comments` У Comment есть поле removed. Как мне получить список комментариев с removed=false? Я бы сделал Comment отдельным документом, но тогда, у Comment есть поле user, и я хотел бы получить список всех постов в комментариях которых засветился юзер, и вот что-то тоже хуй.
#4GIJSH / @partizan / 3193 дня назад

во дожились
#4GIJSH/UO1 / @komar / 3193 дня назад
@komar чо?
#4GIJSH/6Z5 / @partizan --> #4GIJSH/UO1 / 3193 дня назад
what have you tried?
#4GIJSH/A2Q / @anonymous / 3193 дня назад
@anonymous ну я хуй знает вообще что делать. развернуть чтоли вложенные документы и фильтровать?
#4GIJSH/P7S / @partizan --> #4GIJSH/A2Q / 3193 дня назад
@anonymous сейчас попробую unwind!
#4GIJSH/RAK / @partizan --> #4GIJSH/A2Q / 3193 дня назад
проектируешь базу как боженька
#4GIJSH/IR8 / @mugiseyebrows / 3193 дня назад
@mugiseyebrows могу спроектировать и тебе. Или давай расскажи как надо
#4GIJSH/6HF / @partizan --> #4GIJSH/IR8 / 3193 дня назад
Азаза, nosql мрази соснули там, где бы обошлось простейшим джойном. А вот если бы мозгов хватило, юзал бы sqlalchemy.
#4GIJSH/IUY / @je / 3193 дня назад
@je чо за nosql мрази? какая из описанных тобой задач не решается в том числе в nosql? на что из sql тебе хватает мозгов?
#4GIJSH/46Y / @anonymous --> #4GIJSH/IUY / 3193 дня назад
@je нахуй мне sqlachemy, в джанге свой ORM есть.
#4GIJSH/LNU / @partizan --> #4GIJSH/IUY / 3193 дня назад
@partizan Охуенный в джанге орм, ага.
#4GIJSH/QQD / @je --> #4GIJSH/LNU / 3193 дня назад
@je ну я к тому что блять ты его не применишь к nosql. Да и вообще, в пизду ORM, мне хотя бы решить задачу на голой mongo. Ну впрочем с unwind вроде нормально получается. Но я бы еще поискал способов получше.
#4GIJSH/YVN / @partizan --> #4GIJSH/QQD / 3193 дня назад
db.Posts.find({ 'list.removed': false });
#4GIJSH/2LX / @krkm / 3193 дня назад
@je в монге даже джойнов не нужно
#4GIJSH/MQN / @krkm --> #4GIJSH/IUY / 3193 дня назад
или так: ``` db.Posts.aggregate([{ $unwind: '$list' }, { $match: { 'list.removed': false } }]); ``` пробуй кароч
#4GIJSH/R42 / @krkm / 3193 дня назад
@krkm Все намного проще, когда у тебя глобал диби лок!
#4GIJSH/ROM / @komar --> #4GIJSH/MQN / 3193 дня назад
@komar дваждую
#4GIJSH/WX5 / @krkm --> #4GIJSH/ROM / 3193 дня назад
@krkm `db.Posts.find({ 'list.removed': false }, {'list.$': `});` вот так работает, но я не понимаю что это за ебаная магия а если так как ты написал - находит только посты.
#4GIJSH/TVX / @partizan --> #4GIJSH/2LX / 3193 дня назад
@partizan `{'list.$': 1}` бля, проебал чот
#4GIJSH/JKF / @partizan --> #4GIJSH/TVX / 3193 дня назад
@krkm вот так в итоге и сделал.
#4GIJSH/ZHV / @partizan --> #4GIJSH/R42 / 3193 дня назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.