0
counter_culture 메서드에서 column_names를 정의 할 때 깊이 연관시킬 수 있습니까? 문서와 예제에서는 항상 column_names를 결정하는 데 사용되는 모델에 속한 속성을 사용합니다. 그러나 속성이 연관된 모델에 속하면 어떻게 될까요?counter_culture sum의 깊게 연결된 column_names
예를 들어,이
# Account model
counter_culture :user,
column_name: Proc.new { |account| account.has_billable_hours? ? 'billed_hours_sum' : nil },
delta_column: 'billed_hours',
column_names: { ["account.billed_hours > ?", 0] => "billed_hours_sum" }
관련된 예를 작동
# Account model
counter_culture :user,
column_name: Proc.new { |account| account.clients.has_billable_hours? ? 'billed_hours_sum' : nil },
delta_column: 'billed_hours',
column_names: { ["accounts.clients.billed_hours > ?", 0] => "billed_hours_sum" }
위를 들면, 당신이 (당신은 할 수 없음) 사용이 COLUMN_NAMES 방법에 조인은이
처럼 보일 것입니다 수있는 경우joins(:account=>:client).where("accounts.clients.billed_hours > ?", 0)
두 번째 예는 내 질문을 보여줍니다. 평가해야하는 속성이 상위 모델에 속하지 않고 관련 모델에 속하는 경우 column_names를 어떻게 정의합니까?
나는 레이크 작업에 클래스 메소드 콜백을 사용했다. – hellion