Tag: 元搜索

Rails meta_search gem:按关联模型的计数排序

我正在使用meta_search对表中的列进行排序。 我的一个表列是特定模型的相关记录的计数。 基本上是这样的: class Shop true).count end end class InventoryRecord < ActiveRecord::Base belongs_to :shop #has a "current" boolean on this which I want to filter by as well end 在我的Shop #index视图中,我有一个表格列出了每个商店的current_inventory_count。 无论如何使用meta_search按此计数订购商店? 我无法使用current_inventory_count方法,因为meta_search只能使用返回ActiveRecord :: Relation类型的自定义方法。 我可以考虑这样做的唯一方法是做一些自定义SQL,其中包括“虚拟”列中的计数,并按此列进行排序。 我不确定这是否可能。 有任何想法吗? 我正在使用Rails 3.0.3和最新的meta_search。

在named_scope中通过2个带有条件的表进行排序

我正在寻找解决方案如何按属性排序,这是两个关联级别深,也有一个条件。 我有与商店模型或仓库模型有关联的订单模型这两个模型都与有名称的国家相关联。 我的目标是: 缩小订单并按国家/地区名称排序。 结果必须是ActiveRelation对象 主要目标是将此范围用于MetaSearch gem for view helper sort_link class Order true, :if => “warehouse_id.nil?” validate :warehouse_id, :presence => true, :if => “shop_id.nil?” #the case with shop_id.present? && warehouse_id.present? does not exist scope :sort_by_country_name, ??? end class Shop < ActiveRecord::Base belongs_to :country end class Warehouse [:id, :name, …] Actualy我不知道这是否可能所以我感谢任何建议。 谢谢

将索引中的meta_search gem与现有的地理编码器gem搜索(rails)集成

我已经使用地理编码器实现了基于位置的搜索,并且无法集成meta_search gem。 我正在尝试将meta_search集成到我的object_controller index以允许用户按对象过滤和排序搜索结果:attributes已经按位置搜索。 我的object_controller: def index if params[:search].present? @objects = Object.near(params[:search], 50, :order => :distance).paginate(:page => params[:page], :per_page => 9) else @objects = Object.paginate(:page => params[:page], :per_page => 9) end end 知道如何最好地将@search集成到meta_search gem所需的索引中吗? 以下是meta_search github为索引推荐的内容: def index @search = Article.search(params[:search]) @articles = @search.all # load all matching records # @articles = @search.relation # Retrieve […]

如何在Rails 3中使用Ransack的范围?

在我的Widget模型中,我有以下内容: scope :accessible_to, lambda { |user| if user.has_role?(‘admin’) self.all else roles = user.roles role_ids = [] roles.each { |r| role_ids < role_ids) end } 理想情况下,我想将此范围用作Ransack搜索结果的filter,因此在我的控制器中我有: def index @q = Widget.accessible_to(current_user).search(params[:q]) @widgets = @q.result.order(‘created_at DESC’) end 这样做会产生以下错误: 未定义的方法`search’for Array:0x007ff9b87a0300 我猜Ransack正在寻找一个ActiveRecord关系对象,而不是一个数组。 无论如何我可以使用我的范围作为Ransack的filter吗?

未定义的方法stringify! 使用meta_search和active_admin gems时出错

我正在使用active_admin gem,因为它需要meta_search gem,我想在管理页面之外提供搜索function。 当我向Model.search方法提供一个字符串时,我收到一个未定义的方法错误。 根据meta_search文档,这就是我需要做的全部,并且所有active_admin搜索都能正常运行。 我错过了什么吗? 的Gemfile: gem ‘activeadmin’ gem “meta_search”, ‘>= 1.1.0.pre’ 控制器: @eventsearch = Event.search(params[:q]) 错误消息(example.com/?q=foo): undefined method `stringify_keys!’ for “foo”:String

MetaSearch“未定义的方法`model_name’用于NilClass:Class”用于全局条形搜索

我正在使用Ernie的精彩MetaSearch,但我有一个恼人的问题。 在我的application.html.erb中,我有一个搜索字段,就像在StackOverflow页面上一样。 vagas_path do |f| %> “search-button”, :name => “submit” %> 问题是我没有在所有控制器的所有操作中初始化@search,所以当我不在Vagas #index时,我得到“未定义的方法`model_name’用于NilClass:Class”消息。 什么是最好的解决方案? ============================================ 解 :get, :id => ‘vaga_search’ do %> “search-button”, :name => “submit”, :id => ‘search_submit’ %>

Meta_Search未定义的方法错误

简介:我正在开发汽车经销商应用程序,所以我有一个名为cars的表,其中包含字段carname_id和carmodel_id。 carname_id和carmodel_id取自2个名为carnames和carmodels的表格,我保留所有车名和车型。 现在我已经设置了这些模型,所以我可以将它们放在一个关系中,比如belongs_to和has_many(不相关,因为它的工作原理应该是这样 – 我可以从选择列表中将汽车和模型添加到新车中) 我使用meta_search来搜索许多字段,search_form中的代码看起来像他的 make和model字段是cars表中用于存储汽车和汽车型号名称的旧文件。 但是当我进入高级搜索表单时,我发现自己陷入了选择动态模型列表..我在car.rb中列出了为汽车列表指定的汽车名称和汽车模型列表..我同意这是不是最好的方法,这就是为什么我必须创建2个表:我在开始时告诉你的Carnames和carmodels ..我已经设置了所有内容并且添加新车按预期工作,我可以选择carname_id来自carnames表和来自carmodels表的carmodel_id,它使用如下forms完美地存储在数据库中: 这样我放弃了汽车表中的制造和模型字段,因为我有2个新的工作字段carname_id和carmodel_id 现在问题:在制作像这样的表格时,如何通过carmodel_id和carname_id进行搜索: 给我一个错误 MetaSearch的未定义方法`carname_id_contains’::搜索:: Car:0xb584b7a4 汽车控制器: def index @search = Car.search(params[:search]) @cars = @search.all.paginate :page => params[:page], :per_page => 18 @select_carnames = Carname.find(:all).map{|element| [element.name, element.id]} @select_carmodels = Carmodel.find(:all).map{|element| [element.name, element.id]} respond_to do |format| format.html # index.html.erb format.xml { render :xml => @cars } format.json { render […]