2012-03-20 3 views
3

バックボーンのリレーショナルモデルの周りに頭を抱える問題があります。私はそれを使い始めたばかりで、かなり大きなアプリケーションが必要です。Backbone.jsの関係

私が持っている主な問題は、コレクションを含むモデルがあることです。

これは、私が仕事をしなければならないものです:

  • MODELA
    • ID:
    • _id URL:API /モデル/:modelA_id
    • ネストされた:
      • URL :api /:modelA_id/nest

私は私がする必要があるよりも、私はそれより大きな取引作ってるんだと思うが、私はこれをセットアップする方法のまわりで私の頭を包むように見えることはできません。

ご協力いただければ幸いです。

+0

あなたは、このために 'バックボーン-relational'プラグインを使用していますか?ただ明確にしようとしています。あなたの実際のコードを表示することも害ではないかもしれません。 –

+0

はい私はそのプラグインを使用しています。現時点では、関係を設定するためのドキュメントにある基本コードだけがあります。しかし、私はどのように入れ子になったコレクションのURLにmodelA_idを引っ張るか分からない。私はそれが私の最初の問題に取り組んでいると思います。 – MikeD

答えて

9

バックボーンであなたの頭を包み込むのに最も重要なことは、アプリで基本的にすべてを処理するためにイベントを適切に使用する方法です。他の大きなことは、おそらく5つの異なる方法で問題を攻撃するということです。そのうちのどれも他のものよりも良くない/悪いことはありません。あなたが提供してきた緩い構造は、私は同じような何かをするだろうことを考えると

var YourApp = { 
    Models : {} 
    Collections : {} 
    Views : {} 
}; 

YourApp.Models.First = Backbone.Model.extend({ 
    initialize : function(){ 
     var nestedCollection; 
     this.url = 'api/model/' + this.id; 
     nestedCollection = new Backbone.Collection({ 
     url : this.url + '/nest' 
     }); 
     this.set('nested', nestedCollection); 
    } 
}); 

new YourApp.Models.First({ 
    id : 23 
}); 
+0

あなたのモデルの属性の1つがバックボーンコレクションになることはできません。 – ryanmarc

+0

これははるかに理にかなっています。どうもありがとうございました。バックボーンはあなたの頭を包み込むのが難しいものです。 – MikeD