我有这样的表格:
在我的网站标题中:
<% form_tag request.path, :method => 'get' do %>
<p>
<%= text_field_tag :query, params[:query] %>
<%= submit_tag "Search User", :name => nil %>
</p>
<% end %>
控制器:
def index
@title = "All users"
@users = User.paginate(:page => params[:page])
@users1 = User.simple_search(params[:query]).all
end
模型:
acts_as_simply_searchable :columns => [:name, :email]
视图
<%= will_paginate %>
<ul class="users">
<%= render @users1 %>
</ul>
<%= will_paginate %>
显示用户
我想将提交按钮链接到index.html.erb(我在routes.rb中分配了一个路径)。这样用户就可以查看搜索结果
答案 0 :(得分:2)
您不是在提交按钮上执行此操作,而是在form_tag URL(第一个参数)处执行此操作。它会是这样的:
<% form_tag users_path, :method => 'get' do %>
<p>
<%= text_field_tag :query, params[:query] %>
<%= submit_tag "Search User", :name => nil %>
</p>
<% end %>
答案 1 :(得分:1)
只需将request.path
更改为所需的路径。
答案 2 :(得分:0)
我认为你错过了'='符号和字符串插入'request.path' 这对我有用:
<%= form_tag "#{request.path}", method: "get" %>
...the rest of your code ...
<% end %>