2014-12-28 83 views
6

我正在使用Angular資源,我不明白爲什麼Rails將參數複製並放入資源名稱中。我只需要明白爲什麼會發生這種情況。Rails重複資源中的參數

// post data 
{"title":"asdsad"} 

// rails parameters 
Parameters: {"title"=>"asdsad", "presentation"=>{"title"=>"asdsad"}} 

重複,因爲歡迎來到Stackoverflow你需要50分評論,所以這種情況發生。我真的很抱歉:AngularJS $resource sending out an extra "registration" hash?

回答

11

..如果您開啓config.wrap_parameters在初始化[檢查文件 配置/初始化/ wrap_parameters.rb]或[你]呼籲 wrap_parameters()在你的控制器......參數將被克隆,並根據你的控制器的名稱默認包裝在密鑰中。

http://guides.rubyonrails.org/action_controller_overview.html#parameters http://api.rubyonrails.org/classes/ActionController/ParamsWrapper.html

換句話說,你看到的是默認的方式進入軌道事情params哈希表。

+0

非常感謝@ 7stud我對此不知道。 –

+1

剛剛有同樣的問題,在控制器中調用'wrap_parameters false'也會停止控制器特定級別上的行爲 – doz87