创建一个按钮以使用户成为管理员

时间:2014-11-09 05:41:35

标签: ruby-on-rails admin

我正在做Hartl的教程,我想让其他用户管理员。我可以创建一个链接到更新用户属性的操作的按钮,使其成为管理员吗?

<%= button_to "Make Admin", {action: "make_admin" }, method: :put %>

Users controller

def make_admin
   update_attribute(:admin, true)
   redirect_to users_url
end

routes.rb

put 'admin' => 'users#make_admin'

引用合适的用户时遇到问题。有什么建议或确定的方式吗?

由于

1 个答案:

答案 0 :(得分:0)

路线缺少:id。将其更改为

put 'admin/:id' => 'users#make_admin', :as => "make_admin"

另外,button_to

<%= button_to "Make Admin", {action: "make_admin", id: current_user.id }, method: :put %>

UsersController

def make_admin
  user = User.find params[:id]
  user.update( :admin => true )
  redirect_to users_url
end