从magento模型集合中获取单个实体

iecba09b  于 2022-11-12  发布在  其他
关注(0)|答案(2)|浏览(121)

我遇到了一个问题,因为我确定我没有正确地使用我的编程。我已经在Magento中创建了一个自定义模型。
在我的模型的数据库表中有几个具有相同属性的实体...
我只需要从所有这些实体中选择一个与我拥有的属性相同的实体。目前我这样做:

$myvariable = Mage::getModel('test/test')->getCollection()
->setOrder('idserialkeys', 'asc')
->addFilter('idproduit', 1)
->addFilter('utilise', 0)
->addFilter('customerid', 0)
->addFilter('numcommande', 0)

从这个加载我有大约一百个结果,但我只需要更新其中的一个,所以就在我做:

->setPageSize(1);

问题是我需要一个foreach来更新我的实体

foreach($mavaribale as $modifiemoi) {
    // Update of my entity because of course there is only one 
}

正如你所看到的,即使我有一个setPagesize,我也不得不做一个循环(for each)......我想避免这个循环来优化我的代码。

tmb3ates

tmb3ates1#

当你有一个集合,并且只需要一个元素时,可以使用getFirstItem方法。

$modifiemoi = $myvariable->getFirstItem();

请确保您也使用了setPageSize调用,以便只传输一个项目的数据。

ecbunoof

ecbunoof2#

所有集合都是Varien_Data_Collection对象,因此可以使用getFirstItem

$modifiemoi = $mavaribale->getFirstItem();

相关问题