はじめに
Sequelizeでmodel作成の際、上記のようなデータ型の作成に悩んでしまったため、どのような手法があるかについて質問したかったため投稿しました。
例えばこういう例。
1食のメニューは材料データのなかから何種類か選んで作ります。
それぞれの材料を何個使うのかをメニューデータの中に保存したいとします。
const Ingredients = sequelize.define('Ingredients', { name: DataTypes.STRING, cost: DataTypes.INTEGER }); const Menu = sequelize.define('Menu', { name: DataTypes.STRING }); Menu.belongstoMany(Ingredients,{through:"Ingredient_Menu"}) Ingredients.belongstoMany(Menu,{through:"Ingredient_Menu"})
このとき、たとえば、Sequelizeを使わずArrayObjectで表すと、
[ { id:1 name:"豆腐", count:1, }, { id:2 name:"みそ", count:1, }, ]
上記の形で保存できれば可読性保守性が高い気がするんですが、
assosiationを用いると自由度が低く、上記のようなnameのところにIngredient情報を紐づけることができません。(以下のようになるはずです。)
こういったとき、どのようなデータ構造にするのが一番良いのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/06 08:11
2021/01/06 08:28
2021/01/06 08:32