2013-08-29 1 views
0

차 세트가 있습니다 (차 모델이기 때문에). 각 차량에는 사용 가능한 날짜가 있습니다 (다른 모델의 "사용 가능성"). '약속'이라는 다른 모델이 있는데, 오늘은 몇 대의 자동차를 선택할 수 있지만이 날은 선택한 모든 자동차를 사용할 수있는 날과 일치해야합니다. 그래서, 내가 생각한 것은 내 차를 하나씩 계산하는 것입니다. 다른 한편으로 첫 번째 차에 대한 모든 사용 가능한 날짜를 확인하고 매일 사용할 수있는 다른 차가이 날에도 사용 가능한지 확인하십시오. 실제로 나의 차의 수는 유효한 날짜의 조사에 대응해야한다. 나는 분명히했으면 좋겠다. 하나 이상의 가용성이있는 경우RoR에서 두 객체 간의 동일성 검사

내 컨트롤러이 작동하지 않는 것

def available_date 
    @cars = 0 
    @available = 0 
    @cars = @appointment.cars.count 

    @appointment.cars.first.availability.each do |d| 
    @available = Availability.find_all_by_day(d.day) 
    if @available.count == @cars 
     @appointment.day = @available 
    end 
    @available.save 
    end 
end 

, 또한 내가 생각, 그것은 또한 작동하지 않을 것입니다 :의 비록이 있었다 어쨌든이었다. @available.count == @cars 다음 당신이 다음 각 루프를 종료하고 가장 빠른 약속 날짜를해야합니다 break 경우 @appointment.day = d.day

을 설정하려면

답변

0

@appointment하면 (가정 가용성 일 오름차순으로 정렬됩니다) .day는 각 루프의 끝에서 nil입니다. 모든 자동차에서 공유하는 날짜가 없습니다.

희망이 도움이됩니다.

+0

나는 그것을하려했지만 작동하지 않았다. 모두 감사합니다 – user2614075

+0

사용 가능한 저장을 제거 할 수 있습니까? 또한,이 메소드를 호출하는 곳의 코드는 어떻게 보이나요? – SteveTurczyn

관련 문제