Я смотрю на использование Ruby on Rails для витрины магазина, которая должна использовать существующие данные, но я могу создать свою собственную схему базы данных, если потребуется. Многие поля в существующих данных являются char (1), эмулирующими логическое поле (т. Е. Y / N) для кросс-платформенной переносимости. Поскольку данные подвержены изменениям, мне не нужно менять существующую структуру и преобразовывать эти поля в битовые / логические поля.
Если я использую Rails, я действительно хотел бы использовать красивый логический синтаксис Ruby и сказать что-то вроде <%= image_tag 'recycled.jpg' if product.recycled? %>
, но будет ли Rails распознавать char (1) как логическое значение, или мне придется самому определять эти методы в модель как:
class Product < ActiveRecord::Base
# ... other stuff here
def recycled?
self.recycled == 'Y'
end
end
Я думаю, мне придется переопределить их самому, что не составляет особого труда, я просто хочу убедиться, что использование char (1), так как значения yes / no - это не то, что я использовал в прошлом.