2013-11-09 77 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方式。那是你的追求?

相關問題