2013-11-09 78 views
0

我希望能够点击一个链接,并用强参数更新rails4中的属性is_public。这里是我当前的代码:如何使用Rails4中的链接更新具有强参数的属性?

<small><%= link_to "make private", property_url(@property,is_public: [email protected]_public), method: "patch" %></small> 

我有这个问题,是在控制器中的强参数会收到一个无法无类的.permit方法,因为它不会产生params[property][:is_public]。它只是创建params[:is_public]和属性的ID。

是否有一种方法使它嵌套在对象中的参数或我将不得不硬编码(我甚至不喜欢硬编码我的名字)?

回答

3

如果你说你希望你的链接后面的动作能够与更新的数据:

@property.update(property_params) 

凡强参数是这样的:

def property_params 
    params.require(:property).permit(:is_public) 
end 

那么我认为你可以定义你的链接为:

<small><%= link_to "make private", property_url(@property, property: { is_public: [email protected]_public }), method: "patch" %></small> 

而且这将排队参数typi cal方式。那是你的追求?

相关问题