Как реализовать одноэлементную модель

У меня есть сайт в рельсах, и я хочу иметь настройки для всего сайта. Одна часть моего приложения может уведомить администратора по SMS, если произойдет определенное событие. Это пример функции, которую я хочу настроить с помощью настроек всего сайта.

Поэтому я подумал, что у меня должна быть модель настройки или что-то в этом роде. Это должна быть модель, потому что я хочу иметь возможность has_many: контакты для SMS-уведомлений.

Проблема в том, что в модели настроек может быть только один пост в базе данных. Так что я думал об использовании модели Singleton, но это только мешает созданию нового объекта, верно?

Нужно ли мне создавать методы получения и установки для каждого атрибута следующим образом:

def self.attribute=(param)
  Model.first.attribute = param
end

def self.attribute
  Model.first.attribute
end

Возможно, не рекомендуется использовать Model.attribute напрямую, но всегда создавать его экземпляр и использовать его?

Что мне здесь делать?

Ответы на вопрос(12)

Ваш ответ на вопрос