2017-03-09 2 views
0

개체를 가져 오는 데 Pimcore API를 사용하고 있습니다.개체의 필요한 필드 만 선택하는 방법은 무엇입니까?

$myObjects = new Object\MyObject\Listing(); 
$myObjects->load(); 

$myObjects->getObjects(); 

예상대로 작동합니다. 이제 내 개체의 특정 필드 만 선택하려고합니다. 이름 필드.

원하는 필드 만 선택하도록 Pimcore에 지시하려면 어떻게합니까? API를 통해 가능할 수 있습니까? 아니면 맞춤 SQL을 사용해야합니까? 그렇다면 어떻게 할 수 있습니까?

안부

답변

2

pimcore 목록이 항상 리스팅 조건에 일치하는 객체의 완전한 세트를 반환 ...

만 개체의 하나 개의 필드를 선택하는 빠르고 쉬운 방법을 원하는 경우

, I pimcore의 DB 클래스를 사용하는 것이 좋습니다 :이 모든 'YOUR_FIELD'값 클래스의 개체 쿼리 테이블에서 당신에게 배열 폭을 반환합니다

$db = \Pimcore\Db::get(); 
$fieldsArray = $db->fetchCol("SELECT `YOUR_FIELD` FROM `object_query_CLASS-ID`"); 

.


동적으로 사용해야 쿼리의 클래스 ID를 얻으려면 :

$classId = \Pimcore\Model\Object\MyObject::classId(); 

편집 :

하나 이상의 필드 열을 얻으려면, 당신은 사용할 필요가 'fetchCol'대신 'fetchAll':

$fieldsArray = $db->fetchAll("SELECT `YOUR_FIELD`, `YOUR_FIELD_2` FROM `object_query_CLASS-ID`"); 
+0

귀하의 의견에 감사드립니다. 아주 잘 작동하고 내가 원하는 것을합니다. 고맙습니다. – user3180943

관련 문제