Что нужно запомнить?
Есть три основных типа связей в реляционных базах данных:
- Один ко многим [BELONGS_TO / HAS_MANY].
Как пример:
Есть пользователь в таблице user(A), и есть таблица заказов orders(B). Соответственно записи заказов B принадлежат одному пользователю в таблице А. Заказы относятся к пользователю(BELONGS TO).
Также если рассмотреть что у пользователя А есть много заказов В то для пользователя такая связь называется HAS_MANY (пользователь имеет много заказов). - Один к одному [HAS_ONE].
Одна запись может иметь в связях только одну запись в другой таблице. - Многие ко многим [MANY_MANY].
У одной записи может быть много категорий, а у категорий может быть много записей.
Записать связи нужно в вашем active record классе модели:
public function relations() { return array( 'author'=>array(self::BELONGS_TO, 'User', 'author_id'), ); }
Соответственно, потом при выборке вы можете сразу работать с полем author так как он будет подгружен в выборку автоматически.