我创建了一个模型文件,我希望在我内部使用一种方法来返回有限制的产品。
在我的模特下面:
<?php
namespace Test\Ice\Model;
class Data extends \Magento\Framework\App\Helper\AbstractHelper {
/**
* System configuration values
*
* @var array
*/
protected $_config;
/**
* Store manager interface
*
*/
protected $_storeManager;
/**
* Product interface
*
*/
protected $_product;
/**
* Initialize
*
* @param Magento\Framework\App\Helper\Context $context
* @param Magento\Catalog\Model\ProductFactory $productFactory
* @param Magento\Store\Model\StoreManagerInterface $storeManager
* @param Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
* @param array $data
*/
public function __construct(
\Magento\Framework\App\Helper\Context $context,
\Magento\Catalog\Model\ResourceModel\Product\Collection $collection,
\Magento\Store\Model\StoreManagerInterface $storeManager,
\Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig,
array $data = []
) {
$this->_product = $collection;
$this->_storeManager = $storeManager;
parent::__construct($context, $data);
}
public function getProducts() {
$limit = 10;
return $this->_product->getSelect()->limit($limit);
}
}
问题是它没有限制,但总是返回集合中的所有产品。 我哪里错了? 谢谢
答案 0 :(得分:3)
使用
$this->_product->getCollection()->setPageSize(10)->setCurPage(1);