2017-03-09 72 views
0

我正在使用Pimcore API來獲取對象。如何僅選擇需要的對象字段?

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

$myObjects->getObjects(); 

按預期工作。現在,我只想選擇我的對象的特定字段,例如名稱字段。

我該如何告訴Pimcore只選擇我想要的字段?它甚至可能通過API或我需要使用自定義SQL?如果是這樣,我該怎麼做?

問候

回答

2

的pimcore上市總是返回了一套完整的符合列表條件的對象......

如果你想有一個快速簡便的方法來只選擇對象的一個​​領域,我建議使用pimcore DB類:

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

這將返回數組寬度從你的類的對象查詢表中的所有「YOUR_FIELD的價值觀。


得到您的查詢類ID動態您應該使用:

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

編輯:

獲得超過一個字段列,你需要使用'fetchAll'而不是'fetchCol':

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

感謝您的反饋。工作得很好,做我想做的事情。謝謝。 – user3180943