我有以下問題PATCH使用錯誤的模型ID
我的編輯功能節省id爲33的編號32的模型對象,我不知道爲什麼。 這裏是我的控制器功能:
def update
@user = User.find_by_id(session[:user_id])
@user.ranks[0].update(user_params)
redirect_to dashboard_ranks_path
end
private
def user_params
params.require(:rank).permit(:points, :rank_name, :id)
end
同樣的方法在另一臺控制器上,但在這一個突然犯規出於某種原因的工作。例如我有3篇文章,我編輯了第一篇文章,它不會更改編號,它會自動成功編輯。但是,如果我選擇第二個,它會選擇第三個ID,如果我編輯第三個,它會以某種方式修補第一個。有沒有人有過這樣的錯誤?
謝謝:)我剛剛更改了@ user.ranks.update(user_params)到'@ user.ranks.find_by_id(params [:id])。update(user_params)'並修復了它,謝謝。 – Splinti
你不應該使用'find_by_id',除非你不使用Rails 4 –
我正在運行Rails 4,我只注意到 – Splinti