Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 质量更改属性,带有复选框和选择框_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 质量更改属性,带有复选框和选择框

Ruby on rails 质量更改属性,带有复选框和选择框,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,在用户索引页面上,我的应用程序列出了所有用户名(字符串)以及该特定用户是否处于活动状态(布尔值)。在这个页面上,我希望能够选择多个用户,使用复选框,然后使用选择框,选择真或假。然后,应用程序应该更新所有被选中该布尔属性的用户。如何使用Rails 3实现这一点?如果需要的话,我可以提供一些代码,但我认为任何东西都不能解释它的本身。谢谢 resources :users do post 'setup', :on => :collection end 您的UserController de

在用户索引页面上,我的应用程序列出了所有用户名(字符串)以及该特定用户是否处于活动状态(布尔值)。在这个页面上,我希望能够选择多个用户,使用复选框,然后使用选择框,选择真或假。然后,应用程序应该更新所有被选中该布尔属性的用户。如何使用Rails 3实现这一点?如果需要的话,我可以提供一些代码,但我认为任何东西都不能解释它的本身。谢谢

resources :users do
  post 'setup', :on => :collection
end
您的
UserController

def setup
  @ids = params[:users][:ids]
  User.where("id IN ? ", @ids).update_all(active: true)
end
在您的视图中提供
@users=User.all
,并添加以下表单:

=form_tag setup_users_path do
  -@users.each do |user|
    =check_box_tag "users[ids][]", user.id
    =user.name
  =submit_tag "SETUP"
这是我如何做这件事的粗略想法。我只是写了上面的代码,没有在我的机器上测试;容易出错


希望有帮助。:)

使用“全部更新”并选中带有ID的“复选框”标记。示例:User.update_all({:active=>true},{:id=>ids})