0

メッセージテーブルには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
4

1 に答える 1

2

モデルがない場合、オブジェクトに関連付けられたフォームを作成できないため、form tag helpers.

チェックボックスは次のように作成できます。

check_box_tag 'send_to_all'

その結果:

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

ここで他のヘルパーを参照してください。

したがって、モデルに関連付けられていないフォームを使用するには、次のようにします。

<% form_tag '/your_route' do -%>
  <div><%= check_box_tag 'send_to_all' %></div>
  <div><%= submit_tag 'Save' %></div>
<% end -%>
于 2013-03-05T16:24:10.323 に答える