链接提交到另一页

时间:2011-08-05 12:59:53

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-plugins form-submit

我有这样的表格:

在我的网站标题中:

<% 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中分配了一个路径)。这样用户就可以查看搜索结果

3 个答案:

答案 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 %>