Вы можете создать виртуальный атрибут, чтобы получить и установить соответствующее значение.Например, если бы у вас было логическое имя «мужской» и логическое имя «женский», вы могли бы контролировать оба с помощью атрибута пола, например, так:
class User
def gender= gender
self.male = (gender == 'M')
self.female = (gender == 'F')
end
def gender
male ? 'M' : 'F'
end
end
После этого вы могли бы иметь группу переключателей для выбора пола:
radio_button_tag :gender, 'M'
radio_button_tag :gender, 'F'
Конечно, у вас всегда есть возможность объединить значения в один атрибут из 3 состояний, например, пол, который может быть 'M', 'F' или NULL.