Size: a a a

Sequelize - community (eng/ru)

2019 October 22

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
не обязательно, если указать в связи. то он должен добавить в on, разве нет?
источник

KG

Kool Guy in Sequelize - community (eng/ru)
on добавит, но выборку нет
источник

KG

Kool Guy in Sequelize - community (eng/ru)
(where)
источник

YZ

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

G

Greg Smit in Sequelize - community (eng/ru)
так если я в корень втсавлю, он разве не будет по первой табилце шелудить
источник

KG

Kool Guy in Sequelize - community (eng/ru)
хотя секудну
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
Greg Smit
так если я в корень втсавлю, он разве не будет по первой табилце шелудить
он добавит where к результату join-а таблиц
источник

KG

Kool Guy in Sequelize - community (eng/ru)
возможно я с order спутал
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
Kool Guy
возможно я с order спутал
скорее всего
источник

KG

Kool Guy in Sequelize - community (eng/ru)
сорри
источник

G

Greg Smit in Sequelize - community (eng/ru)
Executing (default): SELECT orders.id, orders.date, orders.order_type, orders.site_user, orders.btc, orders.fiat, orders.currency, orders.btc_price, orders.market_price, orders.log_id, orders.stop_price, orders.c_currency, orders.createdAt, orders.updatedAt, pair.id AS pair.id, pair.tradingPairs AS pair.tradingPairs FROM orders AS orders INNER JOIN pairs AS pair ON orders.c_currency = pair.id AND pair.currency = NULL AND pair.c_currency = NULL;  
он мало того что не видит мои сравнения , так еще и для order.c_currency сует pairs.id
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
Greg Smit
Executing (default): SELECT orders.id, orders.date, orders.order_type, orders.site_user, orders.btc, orders.fiat, orders.currency, orders.btc_price, orders.market_price, orders.log_id, orders.stop_price, orders.c_currency, orders.createdAt, orders.updatedAt, pair.id AS pair.id, pair.tradingPairs AS pair.tradingPairs FROM orders AS orders INNER JOIN pairs AS pair ON orders.c_currency = pair.id AND pair.currency = NULL AND pair.c_currency = NULL;  
он мало того что не видит мои сравнения , так еще и для order.c_currency сует pairs.id
покажите запрос к орм
источник

G

Greg Smit in Sequelize - community (eng/ru)
db.orders.belongsTo(db.pairs, {foreignKey: 'currency', otherKey: 'currency'});
db.orders.belongsTo(db.pairs, {foreignKey: 'c_currency', otherKey: 'c_currency'});
это сравнения я сделал , так как понял
Orders.findAll({
 include: [{ model: Pairs, where:  {currency: Pairs.currency , c_currency: Pairs.c_currency  }, attributes: ['tradingPairs'] }],
})
.then(order => {  
 res.status(200).json( order );
})
это весь запрос
источник

G

Greg Smit in Sequelize - community (eng/ru)
если убрать where то он даст массив и там подсунет пустое значение pair
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
Greg Smit
db.orders.belongsTo(db.pairs, {foreignKey: 'currency', otherKey: 'currency'});
db.orders.belongsTo(db.pairs, {foreignKey: 'c_currency', otherKey: 'c_currency'});
Orders.findAll({
 include: [{ model: Pairs, where:  {currency: Pairs.curency , c_currency: Pairs.c_currency  }, attributes: ['tradingPairs'] }],
})
чтото не так кажись у меня , пустйо массив вышел
db.orders.belongsTo(db.pairs, {foreignKey: 'currency', targetKey: 'currency', as: 'currency'});
источник

YZ

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

G

Greg Smit in Sequelize - community (eng/ru)
Naming collision between attribute 'currency' and association 'currency' on model orders. To remedy this, change either foreignKey or as in your association definition
источник

YZ

Yaroslav Zhymkov in Sequelize - community (eng/ru)
переименуйте асоциацию
источник

YZ

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

G

Greg Smit in Sequelize - community (eng/ru)
я же правильно понял пеерименовать as:
источник