Ruby on rails 在主干网中发送的参数不同';s模型
在一个简单主干网的应用程序中,我有以下模型:Ruby on rails 在主干网中发送的参数不同';s模型,ruby-on-rails,backbone.js,Ruby On Rails,Backbone.js,在一个简单主干网的应用程序中,我有以下模型: class Rcbvm2.Models.Item extends Backbone.Model initialize: (modelName) -> @modelName = modelName @paramRoot = @modelName @urlRoot = "http://localhost:3000/#{@modelName}" 当我尝试这个: item = new Rcbvm2.Models.Item(
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()
因此,有一个请求发送到我的rails应用程序:
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
有了页面我就有了这个“页面”=>{“body”=>“test”}
,有了新闻,就什么都没有了
结束编辑1
我还尝试了“用户”模型,这是我的rails应用程序中不存在的一个模型,它的想法与新闻相同
我不明白。你有什么想法吗
编辑2
这是我的路线:
resources :pages
resources :news
两者都是一样的。我认为一切都是正确的,问题是您必须在新闻控制器中返回正确的JSON。查看页面控制器,并将其与新闻控制器进行比较。我找到了解决方案。首先,“new”似乎是一个保留词。其次,我必须在我的模型中添加可访问的正确属性
谢谢 你所说的“如你所见,在散列“new”中有“body”是什么意思?你能清楚地说明你的问题吗?我编辑了我的问题。在发送的参数中,没有“new”散列。new的控制器与page的控制器完全相同