У меня есть сайт на рельсах, и я хочу иметь настройки для всего сайта. Одна часть моего приложения может уведомлять администратора по SMS, если происходит определенное событие. Это пример функции, которую я хочу настроить с помощью настроек всего сайта.
Так что я подумал, что у меня должна быть модель настройки или что-то в этом роде. Это должна быть модель, потому что я хочу иметь возможность has_many :contacts для SMS-уведомления.
Проблема в том, что для модели настроек может быть только один пост в базе данных. Итак, я думал об использовании модели Singleton, но это только предотвращает создание нового объекта, верно?
Нужно ли мне по-прежнему создавать методы получения и установки для каждого атрибута, например:
def self.attribute=(param)
Model.first.attribute = param
end
def self.attribute
Model.first.attribute
end
Возможно, не рекомендуется использовать Model.attribute напрямую, но всегда создавать его экземпляр и использовать его?
Что мне здесь делать?