在Users的索引页面上,我的应用程序列出了所有用户的名字(字符串)以及该特定用户是否处于活动状态(布尔值)。在此页面上,我希望能够选择多个用户,使用复选框,然后使用选择框,选择true或false。然后,应用程序应更新已检查到该布尔属性的所有用户。你如何用Rails 3实现这一目标?如有必要,我可以提供一些代码,但我认为没有任何东西可以解释它的自我。感谢。
答案 0 :(得分: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
-@users.each do |user|
=check_box_tag "users[ids][]", user.id
=user.name
=submit_tag "SETUP"
这是我如何做到这一点的粗略概念。我只是在我的机器上没有测试就写下了上面的代码;容易出现一些错误。
希望它有所帮助。 :)