Я думаю, что вы на правильном пути, с небольшими изменениями.
Я бы создал NotificationType
, который содержит 6 возможных уведомлений, которые может получить человек. И тогда у вас есть Notification
, который связывает NotificationType
с Person
с фактическим сообщением.
Таким образом, ваши таблицы будут выглядеть примерно так:
Person: id, name, ...
NotificationType: id, name, severity, ...
Notification: id, person_id, notification_type_id, message
и ваши модели будут
class NotificationType
has_many :notifications
end
class Person
has_many :notifications
end
class Notification
belongs_to :person
belongs_to :notification_type
end
Надеюсь, это поможет.