как конвертировать это в Join AR - PullRequest
0 голосов
/ 28 февраля 2011

как преобразовать мой запрос в активную запись Yii framewor с помощью join?мне трудно конвертировать этот материал.

        $conn = Yii::app()->db;
        $sql = "SELECT * FROM wswebproducts JOIN category_products ON
        category_products.ProductID = wswebproducts.ProductID
        WHERE category_products.catid = :cid";
        $sql = $conn->createCommand($sql);
        $sql->bindValue(':cid',Yii::app()->request->getQuery('cid'));

        $row = $sql->queryAll();

Ответы [ 2 ]

0 голосов
/ 28 февраля 2011

Это то, что вы хотите и не работает?

$dataProvider=new CActiveDataProvider('wswebproducts', array(
    'criteria'=>array(
        'condition'=>'category_products.catid = :cid',
        'with'=>array('category_products'),
        'params'=>array(':cid'=>Yii::app()->request->getQuery('cid')),
     ),
    'pagination'=>array(
        'pageSize'=>20,
     ),
));

Ссылка на это http://www.yiiframework.com/doc/api/1.1/CActiveDataProvider

0 голосов
/ 28 февраля 2011

Вы должны определить category_products relation в своих wswebproducts model, к которому присоединяется ProductID.

 public function relations()
{
    return array(
    'category_products' => array(self::MANY_MANY, 'Product', 'category_products(catid, ProductID)'),
    );
}

Извлечь руководство , это круто: -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...