Как сохранить два параметра входных значений одновременно - PullRequest
0 голосов
/ 17 мая 2019

У меня есть два тега ввода. Одним из них является select_tag и checkbox_tag.

Поле выбора - для выбора имени клиента, и когда один из них выбран, другой флажок будет отображаться с событием щелчка.

Если я выбираю только клиента без выбора клиента, то выполняется поиск. Он содержит имя клиента, выбирает параметры после поиска.

Но когда я выбираю имя клиента и отмечаю оба тега Decendents, поиск не будет содержать оба параметра. После поиска оба параметра исчезли. Мне нужно держать параметры после поиска.

Это мой взгляд:

  .row
    .col-md-3
      = label_tag "Customer/Supplier Name"
      = select_tag "search_customer_supplier[id]", options_from_collection_for_select(Organization.customers_and_suppliers, :id, :name, params.dig('search_customer_supplier', 'id')), class: "form-control parent_class chosen-select", id: "search_registered_customers", include_blank: true
    .col-md-10.small_scale_margin-top2#check_children_wrapper.hide
      = label_tag "Descendent"
      = check_box_tag "organization_children", false

Это мой контроллер:

  if params[:search].present? or params[:excel_report].present?

    search_customer_supplier = params[:search_customer_supplier]

    if params[:organization_children].present? and search_customer_supplier["id"].present?
      organization_id = search_customer_supplier["id"]
      organization = Organization.find(organization_id)
      anchestor_ids = organization.anchestors.map{|o| o[:member].id }
      search_customer_supplier["id"] = "(#{anchestor_ids.join(' OR ')})" if anchestor_ids.any?
    end
...