POSO
@POSO

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

form withで送信するパラメーターを条件分岐で変更したい

解決したいこと

form withで特定のカラムを選択した場合、そもそもそのデータを送信しない、という設定にしたいです
そのコードのイメージがつかないので教えてほしいです
ransack、activerecordを使用しています

form with本体

<%= search_form_for @q, url: search_items_path do |f| %>
<%= f.label :name_cont, '選手検索' %>
<%= f.search_field :name_cont %>
<% f.label :category_id_eq %>
<%= f.collection_select(:category_id_eq, Category.all, :id, :name, {}, {class:"select-box", id:"category"}) %>
<% f.label :country_id_eq %>
<%= f.collection_select(:country_id_eq, Country.all, :id, :name, {}, {class:"select-box", id:"country"}) %>
<br>
<%= f.submit '検索' %>
<% end %>

categoryのモデル

class Category < ActiveHash::Base
include ActiveHash::Associations
has_many :items

self.data = [
{ id: 0, name: 'カテゴリー選択' },
{ id: 1, name: 'キーパー' },
{ id: 2, name: 'ストライカー' },
]
end

条件分岐の完成イメージ

上記のformから送信されるデータの一例

Parameters: {"q"=>{"name_cont"=>”メッシ”, "category_id_eq"=>"1", “country_id_eq"=>”1”}, "commit"=>"検索"}

もし
"name_cont"=>””
の場合送信されてほしいデータ

Parameters: {"category_id_eq"=>"1", “country_id_eq"=>”1”}, "commit"=>"検索"}

このように特定の条件を満たす場合そのデータを送信しない設定にしたいです

0

No Answers yet.

Your answer might help someone💌