2011-11-19 3 views
3

회원 수가 has_many 인 Waiver 개체가 있습니다. 나는 포기가 주어진 분기 회원이 있는지 파악하려는 : 이것은 그러나 나에게 ArgumentError: Unknown key: begin_date을 제공레일 3 ArgumentError : 알 수없는 키 : begin_date

def has_current_membership? 
    memberships.count("begin_date >= :begin_date AND end_date <= :end_date", { :begin_date => Time.now.beginning_of_quarter, :end_date => Time.now.end_of_quarter }).count > 0 
end 

. 내가 잘못 뭐하는 거지

[#<Membership id: 20, waiver_id: 1, begin_date: "2011-10-01", end_date: "2012-01-01", created_at: "2011-11-19 07:10:10", updated_at: "2011-11-19 07:10:10">] 

을 : 나는 콘솔에서 Waiver.first.memberships을 할 경우 내가 얻을 수 있기 때문에 회원 그러나 BEGIN_DATE 열이 있습니까?

답변

7

당신은 두 번 .count 대신, 찾기 조건 .where를 사용한다 :

memberships.where("begin_date >= :begin_date AND end_date <= :end_date", { :begin_date => Time.now.beginning_of_quarter, :end_date => Time.now.end_of_quarter }).count > 0 
+0

와우! 내가 그걸 알아 채지 못했다니 믿을 수가 없어. –

관련 문제