0

Rails バックエンドで backbone.js を使用しています。

私はオブジェクトのコレクションを持っています:

class D3.Collections.ResourceInstances extends Backbone.Collection
  url: '/project/'+D3.projectId+'/resource_instances'

resource_instances をユーザーの現在のプロジェクトにスコープしようとしています。私の Rails ビューでは、D3 に projectId を設定しています。

<%= javascript_tag do %>
  $(document).ready( function() {
    D3.projectId = <%= @project.id %>;
  });
<% end %>

resources = new D3.Collections.ResourceInstances()ブラウザコンソールで呼び出すresources.url"/project/undefined/resource_instances". ただし、'/project/'+D3.projectId+'/resource_instances'コンソールで評価すると、期待どおりの結果が得られ"/project/37/resource_instances"ます。ここで何が起こっているのですか?コレクションで projectId が定義されていないのはなぜですか?

4

1 に答える 1