1

我是 RoR 的新手。我正在尝试创建一个主页/索引页面,其中将包含一个 ransack gem 的搜索表单。我不知道该怎么做。
我有 6 个相互关联的模型。我想创建一个搜索表单并将结果路由回查看者的搜索页面。

任何帮助将不胜感激,因为我已经花了 4 天时间试图弄清楚。

谢谢你

以下获取输入,然后将我重定向到带有搜索结果的应用程序/索引页面。

applications_controller.rb

class ApplicationsController < ApplicationController
  before_filter :authenticate_user!
  before_filter :only_allow_admin, :only => [ :index, :edit, :destroy ]

  # GET /applications
  # GET /applications.json
  def index
    @apps = Application.all
    @search = Application.search(params[:q])
    @apps = @search.result
    @search.build_condition
    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @apps }
    end
  end

home_controller.rb

class HomeController < ApplicationController
  #before_filter :search

  def search
    # @searchphrase = "%" + params[:q] + "%"
    # @results = Database.find(:all, :conditions => [ "name LIKE ? ", @searchphrase])
    # render :layout => false
  end

  def index
    @search = Application.search(params[:q])
    @apps = @search.result
    @search.build_condition

    respond_to do |format|
    format.html # index.html.erb
    format.json { render json: @apps }
    end
  end

  def about
  end

end

家庭控制器中的 index.html.erb

<h2>Core Database</h2>
<%= javascript_include_tag "prototype" %>
<%= search_form_for @search do |f| %>
  <div class="field">
    <%= f.label :name_cont, "Name contains" %>
    <%= f.text_field :name_cont %>
  </div>
  <div class="actions"><%= f.submit "Search" %></div>
<% end %>

<div id="results"><% yield %></div>
4

0 回答 0