Управление категориями для нескольких моделей в CakePHP - PullRequest
0 голосов
/ 24 марта 2011

У меня есть куча моделей, которые я собираюсь создать, и у этих моделей будут разные типы категорий, к которым они могут принадлежать.Например, одна модель будет HABTM один набор категорий, другая модель будет HABTM другой набор.

У меня возникла одна идея - создать модель с именем Category и создать таблицу категорий с полем «model», содержащим название модели, с которой эта категория имеет отношение HABTM.Тогда другие модели будут выглядеть примерно так:

    public $hasAndBelongsToMany = array(
    'Category'=>array(
        'conditions'=>array(
            'Category.model'=>'Modelname'
        )
    )
)

Это нормально, но

  1. этот код будет повторяться во всех моделях, которые кажутся глупыми и
  2. некоторые категории будут применяться к нескольким моделям, поэтому для этих категорий будут дублироваться записи базы данных.

Есть ли лучший способ?Спасибо за вашу помощь!

1 Ответ

0 голосов
/ 24 марта 2011

Вы можете использовать одну модель категории и добавить поле модели в модель категории, чтобы указать связанную модель.Таким образом, вы можете использовать разные модели с моделью одной категории ... Как вы сказали ...

Я думаю, что это хорошая идея.

...