[英]Are params[:controller_name][:field1] and params[:field1] the same in rails 3.1.0?
For create in a controller, the data is passed into the controller in params[:controller_name]
(controller_name could be article or product for example) We can use params[:field1]
to access the field1
data(WRONG!). 为了在控制器中创建,数据以params[:controller_name]
(例如,controller_name可以是商品或产品)传递到控制器中。我们可以使用params[:field1]
访问field1
数据(WRONG!)。 We know the data is passed in as controller_name -> {field1 = A, field2 = B ...}
. 我们知道数据是以controller_name -> {field1 = A, field2 = B ...}
形式传入的。 Is params[:controller_name][:field1]
the same as params[:field1]
? params[:controller_name][:field1]
与params[:field1]
吗?
Can anyone explain? 谁能解释? Thanks. 谢谢。
I think controller_name is a reserved param that always holds the name of the controller so that could explain any weird behavior you are seeing. 我认为controller_name是始终保留控制器名称的保留参数,以便可以解释您所看到的任何怪异行为。 Try using :cname or something like that instead. 尝试使用:cname或类似的名称。
The answer is: the right way to retrieve a field from params is params[:controller_name][:field_name]
, the controller_name here could be for example, product or article. 答案是:从params中检索字段的正确方法是params[:controller_name][:field_name]
,此处的controller_name可以是例如product或article。
params[:field_name]
only returns nothing in our test. params[:field_name]
在我们的测试中仅返回任何内容。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.