Rails boolean fields: `is_foo` или просто` foo`?
Возможный дубликат:
Именование булевых столбцов в Rails
Что такое соглашение о рельсах относительно имен булевых полей?
Например, если у меня есть модель User
, для которой требуется флаг для своей "активности", я должен вызвать поле db is_active
или active
?
Примечание. Rails автоматически генерирует вопросительные методы для доступа к логическим полям: User.is_active?
и User.active?
.
Ответы
Ответ 1
Простая формула легко может быть нормой в Ruby и Rails - even?
, nil?
, empty?
и blank?
, например. Единственный метод формы is_#{something}?
, о котором я могу думать, - это Kernel#is_a?
для определения идентичности класса. Поэтому, чтобы придерживаться стандартных соглашений об именах, я оставил бы is_
в булевых методах, подобных этому.
Ответ 2
Из 2 вы должны выбрать тот, который звучит лучше для вас: User.active? или User.is_active?
Я бы выбрал первый вариант.
Вопросительный знак goody происходит от Ruby, а не Rails.