在Rails 3,它可以插入像這樣的屬性到PARAMS:軌道4:插入屬性PARAMS
params[:post][:user_id] = current_user.id
我試圖做同樣的事情在Rails中4,但有沒有運氣:
post_params[:user_id] = current_user.id
. . . .
private
def post_params
params.require(:post).permit(:user_id)
end
Rails忽略了這種插入。它不會拋出任何錯誤,它只是悄然失敗。
謝謝,我需要使用deep_merge,因爲我的屬性被嵌套... – stephenmurdoch 2013-09-08 19:42:54
@marflar你在params構造函數中使用了'deep_merge'?或者你的控制器的其他地方 – 2014-06-18 00:01:43
這也是我的做法,但我一直在想,必須有一種方法來幹這一點。我所有的50多名控制者在嚴格的參數區域都有類似的.merge聲明。在我的情況下,我將current_user合併到updated_by中。我只在create方法中將current_user合併到created_by中。 – Dan 2014-07-31 16:17:24