2011-03-21 13 views
5

Bir sorunla karşılaşıyorum çünkü eminim programlamamla bunu doğru şekilde yapmıyorum.
Magento'da özel bir model oluşturdum. Benim modelin veritabanı tablosunda
Ben var aynı niteliği olmayan tüm bu öğelerden sadece bir almak gerekir
... Aynı özelliklere sahip pek çok firma vardır. Bunu yapan ben an için
: Ben yüz sonuçları etrafında var bu yükleme itibarenBir magento model koleksiyonundan tek bir varlık elde edin

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

ama ben yapıyorum bu yüzden hemen sonra, bunlardan yalnızca birini güncellemek gerekir:

->setPageSize(1); 

sorun ben (her biri için) bir döngü yapmak zorunluluğu olduğum görebileceğiniz gibi bile benim varlık

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

güncellemek için sonra ben foreach ihtiyaç vardır ben setPagesize var ... Kodumu optimize etmek için bu aptal döngüden kaçınmak istiyorum. Tüm koleksiyonlar Varien_Data_Collection nesnelerdir

cevap

19

Eğer bir koleksiyonu var ve yalnızca Bir öğeye gereksinim duyuyorsanız, getFirstItem yöntemini kullanın. Bu deneyin:

$modifiemoi = $myvariable->getFirstItem(); 

yalnızca bir öğe için veri aktarımı böylece siz de setPageSize çağrı kullandığınızdan emin olun.

Bu yardımcı olur umarım!

sayesinde Joe

+0

gibi:) Teşekkürler – Anselme

+0

yardımcı zamanki Joseph olarak cevap –

+0

setPageSize tam olarak ne yapar? – Pitt

11

Önerileriniz için teşekkürler ve iyi günler,

Anselme sen getFirstItem kullanabilmesi:

$modifiemoi = $mavaribale->getFirstItem(); 
+0

Ben linkleri :) 1 –

+0

sayesinde kullanımınızı için de çok çok teşekkürler çok :) Çok benim durumumda gerçekten yararlı olur – Anselme

İlgili konular