わかりました、私は当初、ユーザーの NewView をルート ページにレンダリングすることに着手しました。フォームが表示されるようになりましたが、フォームに入力して [ユーザーの作成] をクリックすると、次のエラーが表示されます。
TypeError: this.model is undefined
$(this.el).html(this.template(this.model.toJSON()));
関連するコードは次のとおりです。
index.html.erb
<div id="container">Loading...</div>
<script type="text/javascript">
$(function() {
window.newView = new Example.Views.Users.NewView({model: <%= @users.to_json.html_safe -%>,collection: new Example.Collections.UsersCollection()});
window.router = new Example.Routers.UsersRouter({users: <%= @users.to_json.html_safe -%>});
$('body').html(newView.render().$el);
Backbone.history.start();
});
</script>
これは私が今日投稿した1つの質問で、この質問にたどり着きました...コメントを読むと役立つはずです!
ReferenceError: ユーザーが定義されていません Rails + backbone + firebug
2 つのウィンドウを作成したことと何か関係があるような気がします。「window.newView」と「window.router」。
Backbone.history.start() が機能するにはルーターが必要です...正しいですか? これが、最初にルーター行を追加した理由です... Backbone.history.start() でエラーが発生したためです。