我要寻找的解决方案如何通过属性,是两个关联级深,也有一个条件进行排序。
我有必须与店模式或仓库模式这两种模式都与国家,有一个名字相关联的关联顺序模式。
我的目标是:
作用域按国家名称的订单和排序。
结果必须是一个ActiveRelation对象
而主要目标是使用此范围内的元搜索创业板视图助手sort_link
class Order < ActiveRecord::Base
belongs_to :shop
belongs_to :warehouse
validate :shop_id, :presence => 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 < ActiveRecord::Base
belongs_to :country
end
Country.coulumn_names => [:id, :name, ...]
Actualy我不知道这是可能的,所以我很感激任何意见。
谢谢