単純なバックボーンのアプリケーションでは、次のモデルがあります。
class Rcbvm2.Models.Item extends Backbone.Model
initialize: (modelName) ->
@modelName = modelName
@paramRoot = @modelName
@urlRoot = "http://localhost:3000/#{@modelName}"
これを試すと:
item = new Rcbvm2.Models.Item('pages')
item.set('body', 'test')
item.id = 2
item.save()
だから、これで私のレールアプリケーションに送信されるリクエストがあります:
Started PUT "/pages/2" for 127.0.0.1 at 2012-11-01 19:39:40 -0400
Processing by PagesController#update as JSON
Parameters: {"pages"=>{"silent"=>true}, "body"=>"test", "id"=>"2", "page"=>{"body"=>"test"}}
わかりました、それは動作します。私の問題は、私がこれを行うときです:
item = new Rcbvm2.Models.Item('news') //change the model's name
item.set('body', 'test')
item.id = 2
item.save()
私はこれを持っています:
Started PUT "/news/2" for 127.0.0.1 at 2012-11-01 19:40:04 -0400
Processing by NewsController#update as JSON
Parameters: {"news"=>{"silent"=>true}, "body"=>"test1", "id"=>"2"}
ご覧のとおり、ハッシュ「new」に「body」があります。
編集1
ページにはこれ"page"=>{"body"=>"test"}
がありますが、ニュースには何もありません...
編集終了 1
私のRailsアプリケーションには存在しないモデル「ユーザー」も試してみましたが、ニュースと同じだと思います。
わからない。アイデアはありますか?
編集 2
これは私のルートです:
resources :pages
resources :news
両方とも同じこと。