2013-05-13 52 views
0

在用户的索引页上,我的应用程序列出了所有用户的名称(字符串)以及该特定用户是否处于活动状态(布尔型)。在此页面上,我希望能够使用复选框选择多个用户,然后使用选择框选择true或false。然后,应用程序应该将所有检查过的用户更新为该布尔属性。你如何用Rails 3来实现这一点?如果有必要,我可以提供一些我的代码,但我不认为任何东西都不能解释它是自己的。谢谢。质量变化属性,带有复选框和选择框

+0

使用update_all和带有ID的check_box_tag。 示例:User.update_all({:active => true},{:id => ids}) – hypee 2013-05-13 18:56:41

回答

2
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 
    [email protected] do |user| 
    =check_box_tag "users[ids][]", user.id 
    =user.name 
    =submit_tag "SETUP" 

这是我怎么会做它大概的了解。我只是在没有测试的情况下写了上面的代码;容易出现一些错误。

希望它有帮助。 :)

+0

很棒!谢谢。 – dremme 2013-05-13 19:46:59