Ако не се лъжа, нямате нужни да има mySql, налагащ връзки с външни ключове, за да могат те все още да работят в Yii. Настройването на FK ограничения в mySql гарантира правилна цялост на базата данни, но не мисля, че Yii всъщност използва това по време на изпълнение.
Когато първоначално се изпълнява yiic (от Gii) за изграждане на проекта, мисля, че той гледа към DB за изграждане на правилните връзки в модела, но не ги използва след това.
След това Yii използва това знание (от yiic) за връзките на таблиците, за да улесни живота ви, като предоставя методи за бърз достъп за достъп до релационни данни и за да гарантира, че няма да нарушите mySql ограниченията и да получите грозни SQL грешки и т.н. Но все пак можете да използвате Yii релационна логика без основните SQL ограничения. Единственият проблем ще бъде, че ако Yii се обърка и присвои несъществуващ FK или нещо подобно, вашата база данни няма да улови тази грешка (целостта на данните ви ще бъде по-податлива на грешки).
За да свържете продуктите си с отдели, просто се уверете, че имате поле department_id в продукта (което звучи сякаш правите). След това добавете правило за връзка като това към Продукт:
'department' => array(self::BELONGS_TO, 'Department', 'department_id'),
И във вашия модел на отдел:
'products' => array(self::HAS_MANY, 'Product', 'department_id'),
Сега трябва да можете да използвате релацията както обикновено:
$myProductModel->department; // returns the model of the Department referenced
$myDepartmentModel->products; // returns the models of all Products in the department
Успех и ме уведомете, ако съм далеч от базата и не работи за вас!