Rails формы с URL на основе ввода - PullRequest
0 голосов
/ 20 сентября 2019

Я чувствую, что в рельсах нет простого способа сделать это, но, поскольку я довольно новичок в рельсах, я решил попросить решения:

У меня есть форма в виде, которая содержит один (ввод текста.Как я могу указать URL-адрес формы таким образом, чтобы он обрабатывал GET до /something/<input>?

Я знаю, что мог бы:

  1. использовать пользовательский код JavaScript
  2. сообщение в конечную точку, которая будет выполнять перенаправление

Есть ли какой-нибудь более чистый способ?

(с использованием рельсов 5.2.1, если применимо)

Ответы [ 2 ]

0 голосов
/ 20 сентября 2019

Может быть, вы можете попробовать это

В вашей форме:

<%= form_with(url: "path_name/input_field_name", method: :get, local: true) do |f| %>
  <%= f.text_field :input_field_name %>
  <%= f.submit 'Search', input_field_name: nil %>
<% end %>

В вашем контроллере:

unless params[:input_field_name].blank?
  @results = ModelName.where('input_field_name iLIKE ?', "%#{params[:input_field_name]}%")
end
0 голосов
/ 20 сентября 2019

Я думаю, вы могли бы использовать что-то вроде этого:

<%= form_tag(route_path method: :get) do %>
  search <%= text_field_tag :search %>
  <%= submit_tag 'Search' %>
<% end %>

Это зависит от того, какие помощники формы вы используете.

...