【问题标题】:How to have searchlogic initialize with no records如何在没有记录的情况下初始化搜索逻辑
【发布时间】:2010-10-28 21:56:39
【问题描述】:

我在具有数万条记录的模型中使用Searchlogic,并且不想在第一次加载搜索页面时将它们全部显示出来。如果没有 :search 参数,如何从 searchlogic 获取空的搜索对象?

定义搜索 @产品 = [] 如果 params[:search] && !params[:search].blank? @search = Product.searchlogic(params[:search]) 别的 @search = Product.searchlogic(....这里有什么可以得到一个空的 searchlogic 对象?...) 结尾 @products = @search.all 结尾

【问题讨论】:

    标签: ruby-on-rails ruby searchlogic


    【解决方案1】:

    把你的逻辑改成这样:

    def search
        @products = []
        @search = params[:search] && !params[:search].blank? ?
            Product.searchlogic(params[:search]) : nil
        @products = @search.all unless @search.nil?
    end
    

    当然,您可以像这样保留 if 语句:

    def search
        @products = []
        @search = nil
        if params[:search] && !params[:search].blank?
            Product.searchlogic(params[:search])
        end
        @products = @search.all unless @search.nil?
    end
    

    【讨论】:

      猜你喜欢
      • 2016-06-29
      • 1970-01-01
      • 1970-01-01
      • 2014-08-22
      • 1970-01-01
      • 1970-01-01
      • 2021-11-23
      • 1970-01-01
      • 2021-06-09
      相关资源
      最近更新 更多