У меня есть две модели: Show
и Venue
. Шоу имеет одно место, в то время как каждое место принадлежит шоу. Это условие определено в обоих файлах модели с помощью операторов has_one
& belongs_to
. Однако я не могу получить доступ к месту проведения, выполнив show.venue
. Рассмотрим следующий код, где s является экземпляром Show
:
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, должна работать. Это ошибка:
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
. Есть идеи?