5

Ransack ( Railscast ) の結果のリストを CSV ファイル ( Railcast )にエクスポートしようとしています。ただし、ランサック検索によって返される結果ではなく、すべてのオブジェクトをエクスポートし続けます。誰が私が間違っているのか教えてもらえますか?

Reports コントローラーで、@bookings と @search.result の両方を渡してみました。

  def index
    @search = current_user.bookings.search(params[:q])
    @bookings = @search.result
    @search.build_condition
    respond_to do |format|
      format.html 
      format.csv { render text: Booking.to_csv(@bookings) }\
    end
  end

次に Booking to_csv メソッド:

  def self.to_csv list
    CSV.generate do |csv|
      csv << column_names
      list.each do |booking|
        csv << booking.attributes.values_at(*column_names)
      end
    end
  end

それでも毎回、フィルター処理されていない current_user.bookings のリストを取得します。なんで?

4

2 に答える 2

1

これを試して:

def index

  session[:q] = params[:q] if params[:q]
  @search = current_user.bookings.search(session[:q])

  @bookings = @search.result
  @search.build_condition
  respond_to do |format|
    format.html 
    format.csv { render text: Booking.to_csv(@bookings) }\
  end
end
于 2013-07-03T18:23:22.727 に答える