Knockout、Backbone.js、Spine、JavaScriptMVCなどの JavaScript MVC フレームワークを初めて試してみたいと思っています。
これらのフレームワークで利用可能なドキュメントのいくつかを調べ始めましたが、リレーショナル データを処理する方法の例を見つけるのに苦労しています。それらのほとんどは、例として ToDo リストを使用します。ToDo リストは便利ですが、リレーショナル データには対応していません。おそらく、より良い例は、レシピと材料の両方のモデルを備えた料理本でしょう:
var Recipe = function(){
this.name = "Pizza";
this.description = "A delicious baked, flat, disc-shaped bread topped with tomato sauce and cheese.";
}
var Ingredient = function(){
this.name = "Tomato sauce"
}
var IngredientToRecipe = function(){
this.recipe = null;
this.ingredient = null;
this.quantity;
}
私がこれまで見てきたモデルの例は、外部キー、ID 生成などの関係の問題を扱っていないようです。上記の例は多対多の関係ですが、サポートを喜んで受けます1 対多の関係の場合。
私はこれらのフレームワークが提供するものを本当に気に入っています:
- モデルへの変更により、ビュー (つまり DOM) が自動的に更新されます。
- 変更時にサーバー上のモデルを自動的に更新する
- コードの明確な構成
- 等...
しかし、どのフレームワークがモデル間の関係を最もうまく処理できるか、またそれが行われる例があればアドバイスをお願いします。
ありがとう!