Вопрос должен быть простым, но я думаю, что лучший способ сделать это.Просто есть модель User и модель Quest.У пользователя есть один квест.Теперь я просто хочу проверить, не истек ли срок выполнения квеста пользователя.
Я думал, что нужно будет поставить истекший квест?в качестве примера метода квеста.Теперь я могу сделать что-то вроде:
current_user.quest.expired?
или даже создать делегата позже, чтобы сделать его следующим образом:
current_user.quest_expired?
Однако, есть неудобство.Если у пользователя нет квеста, он вернется с нулевой ошибкой.Я не хотел бы заранее проверять или создавать другой метод для модели User, потому что я чувствую, что это нарушает инкапсуляцию.
Как бы вы это сделали?