私は最初のBackbone.jsアプリケーションをRails RESTバックエンドで書いています。困惑しているのはモデル間の関係です。Backbone.jsとのモデル関係をロードする
私が書いているこのアプリのモデルはTicket
とClient
です。私はTickets
とClients
コレクションの両方をセットアップしました。
私は数千人の顧客がいて、メモリにロードしたくないのではなく、チケットが参照されているときに遅れて顧客をロードしたいと思います。
Model#fetch()
メソッドが非同期であるため、私は明らかにうまくいきません。あなたが想像できるように、コールが行われたときに返さなかったフェッチので
class Deputy.Models.Ticket extends Backbone.Model
initialize: ->
@fetchClient()
fetchClient: ->
@client = new Deputy.Models.Client()
@client.set id: @get('userid')
@client.fetch()
clientName: ->
first = @client.get('firstname')
last = @client.get('lastname')
"#{first} #{last}"
は、clientName()
関数は常に、「未定義未定義」を返します。
はここで、これまで(でのCoffeeScript)私のチケットモデルです。
この種のデータ関係を処理する正しい方法は何ですか?あなたが一歩前進して、私が間違ったアプローチを使用していて、代わりに何かを提案していると言えば、私は気にしないでください。
ポインタ、記事、その他何かがあれば幸いです。
ありがとう:
は、JavaScriptでは、あなたはこのような何かをするだろう。しかし、 'Deputy.Models.clientName(lead)'は正確に何をしていますか?それはどこから来ますか? – kolrie
気にしない、私はそれを得た! – kolrie