«collection» 태그된 질문

마 젠토 컬렉션 관련 질문

6
컬렉션에서 getSize ()와 count ()의 차이점
나는 둘 다 동일하다는 것을 여러 번 들었습니다. 그러나 카탈로그 검색 모듈의 제품 컬렉션에서 이상한 문제가 발생했습니다. getSize ()가 0을 반환하는 동안 count ()가 올바른 제품 수를 반환합니다. 따라서 기본적으로 이것은 내가 얻는 것입니다. $collection->count(); //correct count $collection->getSize(); //0 그러나 검색 페이지에 페이지 매김 및 제품을 표시할지 여부를 결정함에 따라 …


3
컬렉션에서 모든 ID를 얻는 가장 효율적인 방법
과거에는 제품 컬렉션의 모든 ID를 얻기 위해 항상 getAllIds컬렉션에 사용 했습니다.이 방법은 데이터 등으로 전체 컬렉션로드를 막는 방법이라고 믿었습니다. 그러나 실제로 오늘 메서드를 살펴본 결과 컬렉션을로드하고 각 항목을 반복하여 ID 배열을 얻습니다. public function getAllIds() { $ids = array(); foreach ($this->getItems() as $item) { $ids[] = $this->_getItemId($item); } return $ids; …
37 collection 

1
콜렉션 모델 및 자원 모델 정보
리소스 모델 및 컬렉션 모델 사용에 대해 약간 혼란 스럽습니다. 때로는 특정 속성을 사용하여 제품을로드하는 예제를 볼 때 일부 예제에서는 콜렉션 모델을 사용하고 때로는 자원 모델을 사용합니다. 또한 특정 방법 get...과 set...테이블 행 이름을 언제 사용할 수 있습니까? 마찬가지로 getName, getId. 사용하려고했지만 값을 가져올 수 없으며 "객체에서 정의되지 않은 메소드 …

2
컬렉션 쿼리에서 테이블을 왼쪽 조인
수출을 위해 시스템에서 주문을 받기 위해 다음을 수행하고 있습니다. $orders = Mage::getModel('sales/order')->getCollection() ->addFieldToFilter('status', $statusToExport) ->addFieldToFilter('store_id', $this->processingStoreId) ->addFieldToFilter('updated_at', array('gteq' => date('Y-m-d H:i:s', $lastSyncTime))); 주문 이 내가 가지고있는 사용자 정의 테이블에있는 경우 내 보내지 않는 곳에 무언가를 추가해야합니다 entity_id. SQL을 사용하는 경우 다음을 수행하십시오. left join myTable as mt on main_table.entity_id = …

1
Magento 2의 컬렉션 기록입니까?
현재 Magento 2 (2.1.2)에있는 많은 코드가 Magento 1에서 어느 정도 이식되었으며 앞으로 많은 코드가 동등한 코드로 대체 될 것입니다. 이 측면에서 Magento 2의 미래 컬렉션이 궁금합니다. 설명하겠습니다 : 마 젠토 1 : Magento 1에서는 다음과 같은 컬렉션을 얻는 데 사용됩니다. $products = Mage::getModel('catalog/product')->getCollection(); 그런 다음 필터 및 기타 작업을 컬렉션에 …


2
기본적으로 페이지 매김을 사용하여 Magento 컬렉션을 반복 할 수 있습니까?
내가 의미하는 바는-할 수있는 방법이 있습니까? $collection = $model->getCollection(); foreach ($collection as $item) { $item->doStuff(); } 이렇게하면 컬렉션에 100k 개의 행이 있더라도 MySQL에서 한 번에 한 행의 페이지 만로드하고 뒤에서 마술처럼 페이지를 매기 게됩니다. Varien_Data_Collection_Db::load()그것을 보는 것이 가능해 보이지는 않지만 확인하고 싶었습니다. 이것은 일반적으로 필요한 것 같습니다.

5
Magento 컬렉션에서 "동작"을 사용하는 문제
Magento 관리 모듈에서 그리드에 대한 사용자 지정 컬렉션을 작성하려고합니다. "addAttributeHaving"이라는 새로운 컬렉션 메소드를 만들었습니다. public function addAttributeHaving($value) { $this->getSelect()->having($value); return $this; } 소장 코드 참조 : $collection->addFieldToSelect( array( 'entity_id', 'created_at', 'increment_id', 'customer_email', 'customer_firstname', 'customer_lastname', 'grand_total', 'status' ) ); $collection->getSelect()->joinLeft(array('sfop' => 'sales_flat_order_payment'), 'main_table.entity_id = sfop.parent_id', 'sfop.amount_authorized'); $collection->getSelect()->columns('sum(sfop.amount_authorized) AS AUTHD'); $collection->getSelect()->columns('grand_total - …

2
addFilter와 addFieldToFilter
Magento 컬렉션에는 두 가지 필터링 방법이 있습니다. 1. Varien_Data_Collection_Db::addFieldToFilter 2. Varien_Data_Collection::addFilter 두 방법 모두 조건을에 추가하는 것 같습니다 Zend_Db_Select. 그리고 어떤 장점이 addFilter있습니까? 대신에 언제 사용해야 addFieldToFilter합니까?

2
"속성 값"(option_id)을 갖는 속성 "옵션 레이블 / 속성 텍스트"를 얻는 방법은 무엇입니까?
옵션 모음 (드롭 다운 / multiselect) 인 속성이 있다고 가정합니다. 주어진 제품의 속성 값을 검색 할 수 있습니다. $store_id = [something]; $productId = [something]; // this is a select/multiselect $attribute_code = [something]; $option_id = Mage::getResourceModel('catalog/product')->getAttributeRawValue($productId, $attribute_code, $store_id ); $option_label = ??? 이제 숫자 값인 option_id 속성이 있습니다 ... ... 내 …

7
카테고리 ID에서 제품 컬렉션 가져 오기
카테고리 ID에서 제품 모음을 가져 오려고합니다. 내가 시도한 몇 가지가 블록에 있습니다. $category = Mage::getModel('catalog/category')->load(123) ->getProductCollection(); 과 $category = Mage::getModel('catalog/category')->load(123); $products = $category->getProductCollection()->addCategoryFilter($category) ->addAttributeToFilter('type_id', 'simple') ->addAttributeToSelect('*'); 또한 phtml에서 그냥 해 보았습니다. $oCatId = Mage::getModel('catalog/category')->load(769); $products->addCategoryFilter($oCatId); 이 중 어느 것도 작동하지 않지만 오류가 표시되지 않습니다. 나는 같은 질문처럼 보이는 다른 게시물을 …


3
LIKE를 사용하여 결과 필터링
다음 세 가지 "헤이 스택"문자열을 고려하십시오. ㅏ) foo bar 비) welcome to foo bar industries 씨) foo barer 그리고 이제 내 "바늘": foo bar (히) 필터를 바늘과 건초 더미 문자열 a & b와 일치 시키지만 c와 일치시키지 않기를 원합니다. 나는 시도했다 : $collection->addAttributeToFilter('name', array('like' => '%'.$needle.'%')); 그러나 위의 내용은 c와 …

4
그리드에 열 추가 (관찰자)-where 절이 모호한 'store_id'열 문제
옵저버 접근 방식을 사용하여 주문 그리드에 열을 추가하고 있습니다. 이벤트에서-> sales_order_grid_collection_load_before컬렉션에 조인을 추가하고 있습니다. 이벤트-> core_block_abstract_prepare_layout_before그리드에 열을 추가하고 있습니다. 추가 정보 편집 : 이벤트 (1)에서 : public function salesOrderGridCollectionLoadBefore($observer) { $collection = $observer->getOrderGridCollection(); $collection->addFilterToMap('store_id', 'main_table.store_id'); $select = $collection->getSelect(); $select->joinLeft(array('oe' => $collection->getTable('sales/order')), 'oe.entity_id=main_table.entity_id', array('oe.customer_group_id')); } 이벤트 (2)에서 : public function appendCustomColumn(Varien_Event_Observer …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.