我在消息表中没有models/message.rb
列send_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
答案 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 -%>