사용자 정의 생성 모음에 일부 항목을 추가하려고합니다. 읽기 Alan Storm varien data collection와이 SO question 나는 두 가지의 다른 옵션을 얻었다. 모델 현재 I에서 내 사용자 지정 컬렉션을 사용하여 코드의 또 다른 변형은 여기Magento, 사용자 정의 모음에 추가 항목
Item (Dts_Banners_Model_Bannersadmin) with the same id "10" already exist
그리고 :
$myResultCollection = new Varien_Data_Collection();
$mybanner = new Varien_Object();
foreach($myBannersCollection as $banner){
$mybanner = $banner;
$search_text = explode(",", $banner->getsearch_text());
foreach ($search_text as $txt){
if (stripos($currentProdName,$txt) !== false) {
$myResultCollection->addItem($mybanner);
}
}
}
이 코드는 다음과 같은 오류가 발생합니다 :
여기 Varien_Data_Collection를 사용하여 하나 개의 옵션입니다 사용 :
$myResultCollection = Mage::getModel('banners/bannersadmin');
foreach($myBannersCollection as $banner){
$search_text = explode(",", $banner->getsearch_text());
foreach ($search_text as $txt){
if (stripos($currentProdName,$txt) !== false) {
$myResultCollection->addItem($banner);
}
}
}
그러나이 오류는 다음과 같은 오류를 표시합니다 (sh가 아님). 모든 것이 있기 때문에 오래 갈 수 있습니다) :
Invalid method Dts_Banners_Model_Bannersadmin::addItem(Array
(
[0] => Dts_Banners_Model_Bannersadmin Object
(
[_eventPrefix:protected] => core_abstract
[_eventObject:protected] => object
[_resourceName:protected] => banners/bannersadmin
[_resource:protected] =>
[_resourceCollectionName:protected] => banners/bannersadmin_collection
[_cacheTag:protected] =>
[_dataSaveAllowed:protected] => 1
[_isObjectNew:protected] =>
.......
내가 뭘 잘못하고있어?
두 번째 것. Magento에서는 모든 컬렉션이 기본 Varien_Data_Collection에서 "상속"되지 않습니까? – Yaroslav
모든 전형적인 Magento 콜렉션은'Varien_Data_Collection'을 사용합니다; Magento의 DB에 대한 ORM을 사용하는 사람들은'Varien_Data_Collection_Db'을 통해 그렇게합니다. – benmarks
알던 스톰 사이트를 확인 했으므로 깨달았습니다. 그것을 사용 해보고 무슨 일이 일어날지를 볼 것입니다. 'Varien_Data_Collection' 또는'Varien_Data_Collection_Db'을 사용하는 것이 좋습니다. – Yaroslav