У меня есть поле типа в модели с именем user, которая является int в db. Значение int speficies - тип хранилища. Пример:
- 0 = mom
- 1 = папа
- 2 = grand mother
- и т.д.
У меня есть несколько других полей, подобных этому, поэтому он переполняет создание таблиц ассоциаций.
Вместо того, чтобы проверять эти значения int по месту в условных операторах в логике модели и контроллера, есть ли место в рельсах для хранения этих констант.
Чтобы я мог делать это с моих моделей и контроллеров?
if myuser.type == MOM
elsif myuser.type == GRAND_MOTHER
EDIT: решение, с которым я пошел в конце:
В модели:
# constants
TYPES = {
:mom => 0,
:dad => 1,
:grandmother => 2,
:grandfather => 3
}
В логике:
if u.type == User::TYPES[:mom]
Несмотря на то, что это было дольше, я чувствовал, что это более интуитивно понятно для других разработчиков, когда они читают мой код. Спасибо Таро ниже для этого решения.