Size: a a a

Sequelize - community (eng/ru)

2019 July 04

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
Association/model definition
источник

LA

Luis Azcuaga in Sequelize - community (eng/ru)
Yaroslav Zhymkov
Association/model definition
Ok ok, 🤔 well, as soon as I achieve it, I’ll post it :)
источник

LA

Luis Azcuaga in Sequelize - community (eng/ru)
источник

LA

Luis Azcuaga in Sequelize - community (eng/ru)
Here are some of the differences, thanks @Version81
источник
2019 July 05

A

Andrei in Sequelize - community (eng/ru)
Пытаюсь сделать ордер и гроуп по вложенным моделям
Кто-нибудь знает почему сиквалайз в случае order делает правильный нейминг
[[Event, Course, 'name', orderDirection]]  —> ORDER BY "event->course"."name" DESC;
а в случае group [[Event, Course, 'id']] —> "event.course"."id"
Хотя в доке сказано что синтаксис для ордера и гроупа одинаковый
приходтся делать напрямую group: ['event->course.id']
Мб есть обходные пути?
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
когда точка то это свойство, когда ->  то связь
источник

A

Andrei in Sequelize - community (eng/ru)
Да, и сиквалайз делает точку в случае group, хотя должен делать связь
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
посмотрите в запросе, может через точку это алиас обьявленый
источник

A

Andrei in Sequelize - community (eng/ru)
та в том то и дело что нет( алиас выглядит так: event->course
источник

A

Andrei in Sequelize - community (eng/ru)
и в ордере он корректно формирует алиас, а в гроупе нет:(
источник

A

Andrei in Sequelize - community (eng/ru)
вопрос не по теме: У кого были длительные проекты с sql, что легче поддерживать, проект написанный с помощью сиквалайз или сырыми запросами(или билдерами типа knex)
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
я стороник орм, много логики берут на себя и уберают кучу дублированого кода
источник

GS

Grigorii K. Shartsev in Sequelize - community (eng/ru)
Andrei
вопрос не по теме: У кого были длительные проекты с sql, что легче поддерживать, проект написанный с помощью сиквалайз или сырыми запросами(или билдерами типа knex)
С совсем сырыми запросами совсем плохо. Это либо куча проблем, либо сам по сути напишешь прослойку типа билдера. Всё на тебе получается, логирование, диалекты, инъекции, серилизация и т.д.

С ORM в целом лучше, но если есть большое число сложных запросов или требований по оптимальным запросам (какая-нибудь большая сложная агрегация, массовые обновляния связных вещей с доп логикой и т.д.), то всё равно придётся писать либо как на билдере, либо с небольшими рав вставками.

В любом случае ORM не отменяет и не запрещает все эти возможности, так что хуже от неё не будет
источник

GS

Grigorii K. Shartsev in Sequelize - community (eng/ru)
Хотя в теории может стать хуже, если взять какую-нибудь TypeORM неподдерживаемую, и поздно обнаружить, что там есть проблема, а фиксить её не будут ._.
источник

GS

Grigorii K. Shartsev in Sequelize - community (eng/ru)
Но проде юзают надо признать
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
мы везде орм юзаем, встречались кейсы проблемные, но порешали. в крайнем случае можно просто запрос написать с помощью методов орм
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
полезно, что орм решает простые запросы, делая их двумя строчками кода
источник

A

Andrei in Sequelize - community (eng/ru)
Ну вот с простыми  запросами все просто супер) и красиво все вложенности все делает.
Но когда начинаются гроупы,хэвинги,ордеры и лимиты сиквалайз билдит странные запросы(порой невозможно? достучаться до нужных переменных). Иногда неочевидные запросы.
источник

A

Andrei in Sequelize - community (eng/ru)
Не хочется мешать орм и sequelize.raw.
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
на практике вам sequelize.raw понадобится очень редко
источник