應用程序/模型/大禮包/ product_sorting_decorator.rb
module Spree
Product.class_eval do
attr_accessible :variable_1, :variable_2,
:variable_3, :variable_4, :as => [:default, :user]
def put_your_sorting_method_here
#your logic goes here
end
end
end
讓我們覆蓋控制器: 應用程序/控制器/大禮包/ products_controller.rb
Spree::ProductsController.class_eval do
def sorting_action
#your logic goes here and get the sorted list of product @product
# by accessing the method defined in model file
end
end
在瀏覽網頁(products/index.html.erb):
這裏只是通過標記行來調用控制器操作:remote => true並使用@product作爲排序後的產品列表。