Удалить raw: true,
- он не позволяет Sequelize анализировать результаты в объектах.Если вы не хотите использовать экземпляр модели, вам нужно написать собственный анализатор для результатов.
Обратите внимание, что он будет разбираться в следующую структуру ("table2" будет свойством):
[
{
"id": 1,
"name": "stuff",
"other": true,
"table2": {
"code_id": 1,
}
}
]
В качестве альтернативы вы можете использовать псевдоним для дочерней строки, но учтите, что он будет добавлен в dataValues
только в том случае, если вы создадите виртуальное поле, которое соответствует ему.
Table1
.findAll({
attributes: [
'id', 'name', 'other',
[sequelize.col('table2.code_id'), 'code_id'], // aliased here
],
include: [{
attributes: [],
model: Table2,
required: true,
}],
raw: true,
})