Поддержка Kohana для одного псевдонима отношений -> несколько моделей

Мне было интересно, есть ли способ для Kohana поддерживать что-то вроде этого:

  1. У меня есть модель под названием «Список покупок» с item_id.
  2. Этот item_id может ссылаться на объекты следующих моделей: Beverage, Toy и т. д.

Итак, если я сделаю что-то вроде этого:

protected $_has_one = array(
    'item' => array(
        'model' => 'beverage'
    )
);

как я могу изменить его для поддержки одного псевдонима для нескольких моделей?

Заранее спасибо!


person yretuta    schedule 18.03.2012    source источник
comment
И как узнать, к какой сущности относится текущая строка?   -  person zerkms    schedule 19.03.2012


Ответы (2)


Почему бы вам не создать таблицу с названием «Предметы», которая содержит все ваши напитки, игрушки и т. д. и просто имеет категорию для них вместо совершенно отдельных таблиц?

Если вы это сделаете, вы можете использовать ORM, поскольку он ясно показывает реляционное отображение.

person gspatel    schedule 05.04.2012

У вас должна быть модель предмета и таблица для него, чтобы item_id ссылался на эту модель предмета. И тогда эта модель может иметь что-то вроде свойства «тип», которое объясняет, какой это тип предмета (напиток, игрушка или что-то еще).

person SET    schedule 20.07.2012