0

フォームを AJAX 投稿リクエストにリファクタリングしています。

既存のフォームは次のとおりです。

    <%= form_for([@group, @invitation], :remote => true, :html => { :'data-type' => 'html', :class => 'fbinvite_form', :id => friend[:identifier]}) do |f| %>
        <%= f.hidden_field :recipient_email, :value => "facebook@meetcody.com" %>

        <div class = "fbinvite btn_list_right" id = "<%= friend[:identifier] %>">
        <%= f.submit "Invite", :class => "btn btn-medium btn-primary", :name => "fb" %>
        </div>
    <% end %>

コントローラーには、送信入力の名前をチェックするロジックがあります。

if params[:fb]
... 
elsif params[:somethingelse]
...
end

それが背景です。上記のフォームを次の ajax に置き換えようとしています (わかりやすくするためにダミー データを追加しました)。

$.post('/groups/7/invitations', { 
  "recipient_email": "facebook@meetcody.com",
  "commit" : "fb",
  "fb" : "fb"
}, function(response) {
  alert("invite created!");
});

これはコントローラーに正常にヒットしますが、条件で true と評価されませんif params[:fb]。ご覧のとおり、そのパラメーターを渡すための非常に基本的な方法をいくつか試しましたが、明らかにうまくいきませんでした。

params[:fb]として評価されるように ajax リクエストを変更するにはどうすればよいtrueですか?

4

0 に答える 0