Я делаю интернет-магазин.  У меня две модели: Product и Category .  Product может иметь одну категорию, в то время как категория может иметь много продуктов. 
  Я определил отношения в models .  Я могу получить доступ к категориям и продуктам.  Но я хочу получить все продукты из определенной категории.  Я пробовал много примеров реляционных запросов с «ленивым» и «нетерпеливым» подходом из официальной документации, но без успеха.  Не могли бы вы объяснить, как его реализовать? 
Вот мой код:
Контроллер категории:
 public function relations() { return array( 'products' => array(self::HAS_MANY, 'Product', 'category_id'), ); } 
Контроллер продукта:
 public function relations() { return array( 'category' => array(self::BELONGS_TO, 'Category', 'category_id'), ); } 
Спасибо.
Ты можешь сделать
 Category::model()->with('products')->findByPk(1); 
вы можете получить доступ к таким полям, как
 $the_category->products->name 
  Это возвращает массив, и вы можете видеть содержимое для debugging purposes 
 CVarDumper::Dump($the_category->products->name,100,true); 
  вы можете использовать цикл foreach для доступа к каждому index 
 $products = $the_category->products; foreach ($products as $the_product) { echo "Name: " . $the_product['name'] . "<br />"; }