2012-05-08 63 views
0

我需要在我的導軌3.2.3應用程序中搜索表單,但我不知道如何做到這一點,昨天我修復了它,但之後刪除了它: (不知道如何在導軌中進行搜索3

這裏是我的控制器和模型:

控制器

class BedrijfsgegevensController < ApplicationController 
    def index 
    @bedrijfsgegevens = Bedrijfsgegeven.all 
    @bedrijfsgegevens = Bedrijfsgegeven.search(params[:search]) 
    respond_to do |format| 
     format.html # index.html.erb 
     format.json { render json: @bedrijfsgegevens } 
    end 
    end 

    # GET /bedrijfsgegevens/1 
    # GET /bedrijfsgegevens/1.json 
    def show 
    @bedrijfsgegeven = Bedrijfsgegeven.find(params[:id]) 

    respond_to do |format| 
     format.html # show.html.erb 
     format.json { render json: @bedrijfsgegeven } 
    end 
    end 

    # GET /bedrijfsgegevens/new 
    # GET /bedrijfsgegevens/new.json 
    def new 
    @bedrijfsgegeven = Bedrijfsgegeven.new 

    respond_to do |format| 
     format.html # new.html.erb 
     format.json { render json: @bedrijfsgegeven } 
    end 
    end 

    # GET /bedrijfsgegevens/1/edit 
    def edit 
    @bedrijfsgegeven = Bedrijfsgegeven.find(params[:id]) 
    end 

    # POST /bedrijfsgegevens 
    # POST /bedrijfsgegevens.json 
    def create 
    @bedrijfsgegeven = Bedrijfsgegeven.new(params[:bedrijfsgegeven]) 

    respond_to do |format| 
     if @bedrijfsgegeven.save 
     format.html { redirect_to @bedrijfsgegeven, notice: 'Bedrijfsgegeven was successfully created.' } 
     format.json { render json: @bedrijfsgegeven, status: :created, location: @bedrijfsgegeven } 
     else 
     format.html { render action: "new" } 
     format.json { render json: @bedrijfsgegeven.errors, status: :unprocessable_entity } 
     end 
    end 
    end 

    # PUT /bedrijfsgegevens/1 
    # PUT /bedrijfsgegevens/1.json 
    def update 
    @bedrijfsgegeven = Bedrijfsgegeven.find(params[:id]) 

    respond_to do |format| 
     if @bedrijfsgegeven.update_attributes(params[:bedrijfsgegeven]) 
     format.html { redirect_to @bedrijfsgegeven, notice: 'Bedrijfsgegeven was successfully updated.' } 
     format.json { head :no_content } 
     else 
     format.html { render action: "edit" } 
     format.json { render json: @bedrijfsgegeven.errors, status: :unprocessable_entity } 
     end 
    end 
    end 

    # DELETE /bedrijfsgegevens/1 
    # DELETE /bedrijfsgegevens/1.json 
    def destroy 
    @bedrijfsgegeven = Bedrijfsgegeven.find(params[:id]) 
    @bedrijfsgegeven.destroy 

    respond_to do |format| 
     format.html { redirect_to bedrijfsgegevens_url } 
     format.json { head :no_content } 
      end 
     end 
    end 

型號

class Bedrijfsgegeven < ActiveRecord::Base 

    def search 
    @search = Bedrijfsgegeven.search() do 
    keywords(params[:search]) 
    end 
    end 

    def self.search(search) 
     if search 
     find(:all, :conditions => ['Voornaam LIKE ?', "%#{search}%"]) 
    else 
     find(:all) 
    end 
    end 

    validates :voornaam, 
       :achternaam, 
       :woonplaats, 
       :telefoon, 
       :website, 
       :email, 
       :presence => true 

    attr_accessible :achternaam, :email, :telefoon, :voornaam, :website, :woonplaats 
end 

我希望someon這可以幫助我。

Grtz基斯

回答

1

你讀過/看過以下railscast:

http://asciicasts.com/episodes/240-search-sort-paginate-with-ajax

每次我需要基本的搜索時間幫我

+0

謝謝,它現在正常工作:D –

+0

同樣,Railscasts是一個很好的開始。如果有幫助,不要忘了標記我的答案爲「已回答」。 – simonmorley

+0

我還有一個問題。現在我只能搜索1個值。在我的模型: \t高清self.search(搜索) \t \t如果搜索 \t \t發現(:全部:條件=> [ '?voornaam LIKE', 「%#{}搜索%」]) \t否則 \t \t發現(:所有) \t年底 結束 我可以搜索的唯一事情是voornaam(英文姓名)我如何改變這種狀況,所以我可以搜索人的記錄,如voornaam,achternaam,woonplaats,電話,網站,電子郵件? 謝謝 –

1

我會建議您開始使用的版本庫會讓你從這些附帶的刪除安全。你可以在bitbucket.org獲得5個免費的版本。 git和mercurial都很棒。

+0

我不明白你的意思。你能解釋一下嗎? –

+1

你應該開始使用git/mercurial來避免這種意外刪除的情況。 –

+0

我有git安裝,但我刪除它,因爲它在一開始並沒有工作,但後來開始工作。但我刪除它,但不知道爲什麼。 –