ProductRepository::getByBrandProvider PHP Method

getByBrandProvider() public method

Get products by brand
public getByBrandProvider ( Producer $producer ) : CActiveDataProvider
$producer Producer
return CActiveDataProvider
    public function getByBrandProvider(Producer $producer)
    {
        $criteria = new CDbCriteria();
        $criteria->condition = 'producer_id = :producer_id';
        $criteria->scopes = ['published'];
        $criteria->params = [':producer_id' => $producer->id];
        return new CActiveDataProvider(Product::model(), ['criteria' => $criteria, 'pagination' => ['pageSize' => (int) Yii::app()->getModule('store')->itemsPerPage, 'pageVar' => 'page'], 'sort' => ['sortVar' => 'sort', 'defaultOrder' => 't.position']]);
    }

Usage Example

示例#1
0
 public function actionView($slug)
 {
     $producer = Producer::model()->getBySlug($slug);
     if (!$producer) {
         throw new CHttpException(404, Yii::t('StoreModule.store', 'Page not found!'));
     }
     $this->render('view', ['brand' => $producer, 'products' => $this->productRepository->getByBrandProvider($producer)]);
 }