Мой сайт содержит профили пользователей с такими полями, как цвет волос и глаз.
Я реализовывал поля типа таблицы поиска с константами в моей пользовательской модели, т. Е.
HAIR = %w[shaved black blond brown red grey white bald]
EYES = %w[black brown blue hazel green grey other]
используется в моих представлениях с инструкциями collection_select для заполнения раскрывающихся списков. Я сделал это с помощью констант, чтобы избежать ~ 10 дополнительных объединений каждый раз, когда просматривается профиль пользователя.
<%= f.collection_select :eyes, Profile::EYES, :to_s, .....
Значения хранятся в модели как целые числа, т.е. profile.hair = Profile :: HAIR.index ("red")
Имею ли я какой-либо очевидный недостаток, не сохраняя эти данные в моделях (например, модель глаза, модель волос) - это окажет какое-либо существенное негативное влияние на скорость поиска, если я хочу выполнять поиск на основе глаз = синий, волосы = черный например?
Спасибо