0
나는 내 컨트롤러에 @sort_by
속성을 추가하고 값이이처럼 초기화 : 레일 : 기본 응용 프로그램 레이아웃이 사용되지 않는 이유는 무엇입니까?
class ProductsController < ApplicationController
def initialize
@sort_by = :shop_brand
end
...
end
이
하지 사용되는 기본 응용 프로그램 레이아웃을 일으켰습니다.왜?
컨트롤러에 속성을 추가하고 초기화하는 올바른 방법은 무엇입니까?
그리고'sort_by'가 절대로 변경되지 않으면, 그것은 클래스의베이스에서 상수'SortBy'로 더 잘 작동 할 것입니다 : – Matchu
'sort_by'는 변경 될 수 있기 때문에 상수 일 수 없습니다. 게다가, 당신의 코드에서'@ sort_by'는 각 액션 전에 설정 될 것입니다, 그러나 기본값 (': shop_brand')을 한 번만 설정하고 싶습니다! 'index' 메쏘드가 호출 될 때마다 디폴트 값을 설정하고 싶지 않습니다! –
글쎄, 나는'@sort_by || = : shop_brand'을 할 수 있다고 생각하지만 매번'set_defaults'를 호출하지 않는 더 멋진 메소드가 있는지 궁금합니다. –