У меня есть модель Invoice, которая имеет атрибут status_id, эта модель относится к моделям Status.
Invoice.status_id может быть «0 => активный» или «2 => закрыт» в БД.
Дело в том, что в моей модели Status у меня также есть ": id => 1,: name => due", но это только когда Invoice.payment_date меньше, чем сегодня.
Поэтому мой вопрос: как я могу что-то наподобие
i = Invoice.find(:first)
i.status.name # i need this to return due if the Invoice.status_id == 0 and
# Invoice.payment_date < Date.today
Очевидно, что приведенный выше код всегда возвращает имя, основанное на значении Invoice.status_id, потому что связь верна.имеет смысл, и кто-то может мне помочь.
Спасибо.