如何设置临时使用的复选框?

时间:2013-03-05 16:00:35

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

我在消息表中没有models/message.rbsend_to_all列 在这里,我想仅使用send_to_all复选框标志来切换模式,以便立即向所有用户发送消息。

我该怎么做?

视图/消息/ new.html.erb

<%= f.check_box :send_to_all, :label => 'Send to all Users'  %> Check if you want to send to all users at once.

messages_controller.rb

    if params[:messages][:send_to_all]
        The action to send the same message to all users 

    else        
        The action to send the message to a user

    end

1 个答案:

答案 0 :(得分:2)

如果您没有模型,则无法创建与对象关联的表单,因此您必须使用form tag helpers

可以像这样创建一个复选框:

check_box_tag 'send_to_all'

导致:

<input id="send_to_all" name="send_to_all" type="checkbox" value="1" />

查看更多帮助者here

因此,要使用与模型无关的表单,请执行以下操作:

<% form_tag '/your_route' do -%>
  <div><%= check_box_tag 'send_to_all' %></div>
  <div><%= submit_tag 'Save' %></div>
<% end -%>