решением, побробую его. Дальше если возникнут сложности - там уже
думать буду что и как усовершенствовать.
Андей, статью читал, но мне показалось решение сложным для решения
такой задачи. В моем случае, кажется использование STI-наследованных
универсальных атрибутов, универсальных атрибутов типа и уникальных
атрибутов через Property [property, value, *type] кажется мне пока
наиболее простым и достаточным.
On Jul 26, 10:45 pm, "Timothy N. Tsvetkov"
<timothy.tsvet...@gmail.com> wrote:
> Об этом и речь. Все зависит от того какую задачу вы решаете и как вы
> хотите работать с этими полями. Для многих задач хранить так поля
> вполне нормальное решение.
>
> 2011/7/26 Vladimir <egotrauma...@gmail.com>:
>
>
>
>
>
>
>
> > Тимофей, спасибо за совет, но мне кажется value_type избыточным. Вот
> > например string или text? - какая разница, если все в Ruby
> > представлено в виде обычной строки. Или string и boolean, даже если я
> > буду знать тип, мне все равно придется конвертировать "true" в true,
> > то же и с числами.
>
> >>>> Другой порос, что вы лучше опишите, а что именно вы хотите получить. То есть для чего вы
> > эти атрибуты решили хранить, как вы их собираетесь использовать.
>
> > А как их использование может повлиять на реализацию?
>
> > Ну вот я описал случай с продуктом, еще можно привести пример -
> > хранение в БД настроек сайта и т.д.
>
> > On Jul 26, 10:07 pm, "Timothy N. Tsvetkov"
> > <timothy.tsvet...@gmail.com> wrote:
> >> Можно сделать product_attributes с полями: attribute, value,
> >> value_type. И тогда вы будете знать какого оно типа. Другой порос, что
> >> вы лучше опишите, а что именно вы хотите получить. То есть для чего вы
> >> эти атрибуты решили хранить, как вы их собираетесь использовать.
>
> >> 2011/7/26 Vladimir <egotrauma...@gmail.com>:
>
> >> > Доброго времени уув. сообщество! У меня снова к вам вопрос.
>
> >> > Задача: Имеется продукт (Product) со своим набором стандартных
> >> > свойств. Для продукта необходимо предусмотреть добавление уникальных
> >> > для него атрибутов, для машины это - скорость, для холодильника,
> >> > например объем. Суть не об STI, когда имеется тип Car < Product и для
> >> > всех машин можно создать шаблон атрибутов, а о таком случае, когда
> >> > (при STI Или без него) один единственные продукт может иметь
> >> > собственный атрибут, которого нет у других продуктов того же типа.
> >> > Таблица product_attributes с полями attribute и value не подходит,
> >> > поскольку тип value может быть произвольным: строка, число, булево
> >> > значение, текст и т.д. Как можно реализоовать это? Пока на ум
> >> > приходит только одно - хранить все в text, а потом числа и булевы
> >> > значения определять из например из to_i и/или регулярных выражений, но
> >> > этот способ мне кажется уродливым.
>
> >> > P.S. использовать документо-ориентированные БД не предлагать.
>
> >> > Благодарю за помощь!
>
> >> > --
> >> > --
> >> > Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
> >> > FAQ группы находится по адресу:http://ru.wikibooks.org/wiki/RubyFAQ
>
> >> > Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> >> > ror2ru@googlegroups.com
> >> > Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
> >> > Дополнительные варианты находятся на странице группыhttp://groups.google.com/group/ror2ru?hl=ru
>
> > --
> > --
> > Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
> > FAQ группы находится по адресу:http://ru.wikibooks.org/wiki/RubyFAQ
>
> > Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
> > ror2ru@googlegroups.com
> > Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
> > Дополнительные варианты находятся на странице группыhttp://groups.google.com/group/ror2ru?hl=ru
--
--
Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ
Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
ror2ru@googlegroups.com
Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-unsubscribe@googlegroups.com
Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru
Комментариев нет:
Отправить комментарий