두 모델이 있습니다 : Show
및 Venue
. 쇼는 각 장소가 쇼에 속하는 동안 하나의 장소를 가지고 있습니다. 이 조건은 has_one
& belongs_to
문을 사용하여 두 모델 파일에 모두 정의됩니다. 그러나 show.venue
을 통해 공연장에 입장 할 수 없습니다.has_one과 관련된 모델에 액세스 할 수 없습니다.
logger.info("*********************")
logger.info("#{s.inspect}")
logger.info("#{Venue.find(s.venue_id)}") # Works
logger.info("#{s.venue}") # Causes a MySQL Error
logger.info("*********************")
내가 MySQL의 오류가 작동해야됩니다 라인 같은 느낌 : S는 Show
인스턴스에 다음 코드를 고려하십시오. 이것은 오류입니다 :
ActiveRecord::StatementInvalid (Mysql::Error: Unknown column 'venues.show_id' in 'where clause': SELECT * FROM `venues` WHERE (`venues`.show_id = 95) LIMIT 1)
나는 왜 venues.show_id
에 액세스하려고하는지 알지 못합니다. 어떤 아이디어?
나는 이렇게 생각하기 때문에 약간 혼란 스럽다. "쇼에 장소가 있다면 쇼에 해당 장소를 참조하는 venue_id가 있습니다." 그러나 나는 생각하기 시작해야만한다. "공연장 옆에 쇼가 있다면, 그 장소의 이드가 있어야한다." – Tony