Rails 3 - 控制器定义更新,不更新记录&没错误?

时间:2010-10-14 19:55:22

标签: ruby-on-rails ruby-on-rails-3

这是DEF UPDATE的权限控制器:

def update

  @permission = Permission.where(:user_id=> params[:permission][:user_id] ).where(:project_id=> params[:permission][:project_id]).first

  respond_to do |format|
    if @permission.update_attributes( params[:role_id] )
        format.js  { render :layout => false }
    else
        format.js  { render :layout => false }
    end
  end

表单帖子标题 UTF8:✓ _method:看跌 authenticity_token:17rvYJmq7167 ktDBXZgDnopH3QY / Tb5a3K0jtcTjrU = 允许%5Brole_id%5D:3 允许%5Buser_id%5D:11 许可%5Bproject_id%5D:3

此处没有错误,但是role_id没有更新?想法?感谢

1 个答案:

答案 0 :(得分:2)

您将params[:role_id]作为参数传递给update_attributes,但这不是根据您提供的帖子数据设置的。

我想你的意思是:

if @permission.update_attribute(:role_id, params[:permission][:role_id])
    ...
end