0
我加@sort_by
属性我控制器,并初始化它的值是这样的:Rails:为什么不使用默认的应用程序布局?
class ProductsController < ApplicationController
def initialize
@sort_by = :shop_brand
end
...
end
这引起了默认应用程序布局不被使用。
为什么?
将属性添加到控制器并初始化它的正确方法是什么?
而且,如果'sort_by'永远不会改变,它可能在类的基础上作为一个常量'SortBy'变得更好:) – Matchu 2010-12-16 02:13:03
'sort_by'可能会改变,所以它不能是一个常量。此外,在您的代码中,@ sort_by将在每个动作之前设置,但我只想设置默认值(':shop_brand')一次!每次调用'index'方法时,我都不想设置默认值! – 2010-12-16 02:17:42
嗯,我想我可以做'@sort_by || =:shop_brand',但我想知道是否有更好的方法,每次都不会调用'set_defaults'? – 2010-12-16 02:25:40