如何select只需要对象的字段?
How to select only needed fields of objects?
我正在使用 Pimcore API 来获取对象。
$myObjects = new Object\MyObject\Listing();
$myObjects->load();
$myObjects->getObjects();
按预期工作。现在我只想 select 我的对象的特定字段,例如名称字段。
我怎样才能告诉 Pimcore select 只有我想要的字段?甚至可以通过 API 还是我需要使用自定义 SQL?如果可以,我该怎么做?
此致
pimcore 列表总是return匹配您的列表条件的完整对象集...
如果您想要一种仅 select 对象的一个字段的快速简便的方法,我建议使用 pimcore 数据库 class:
$db = \Pimcore\Db::get();
$fieldsArray = $db->fetchCol("SELECT `YOUR_FIELD` FROM `object_query_CLASS-ID`");
这将为您 return 您的 class.
对象查询 table 中所有 'YOUR_FIELD' 值的数组宽度
要动态获取查询的 class ID,您应该使用:
$classId = \Pimcore\Model\Object\MyObject::classId();
编辑:
要获取多个字段列,需要使用'fetchAll'而不是'fetchCol':
$fieldsArray = $db->fetchAll("SELECT `YOUR_FIELD`, `YOUR_FIELD_2` FROM `object_query_CLASS-ID`");
我正在使用 Pimcore API 来获取对象。
$myObjects = new Object\MyObject\Listing();
$myObjects->load();
$myObjects->getObjects();
按预期工作。现在我只想 select 我的对象的特定字段,例如名称字段。
我怎样才能告诉 Pimcore select 只有我想要的字段?甚至可以通过 API 还是我需要使用自定义 SQL?如果可以,我该怎么做?
此致
pimcore 列表总是return匹配您的列表条件的完整对象集...
如果您想要一种仅 select 对象的一个字段的快速简便的方法,我建议使用 pimcore 数据库 class:
$db = \Pimcore\Db::get();
$fieldsArray = $db->fetchCol("SELECT `YOUR_FIELD` FROM `object_query_CLASS-ID`");
这将为您 return 您的 class.
对象查询 table 中所有 'YOUR_FIELD' 值的数组宽度要动态获取查询的 class ID,您应该使用:
$classId = \Pimcore\Model\Object\MyObject::classId();
编辑:
要获取多个字段列,需要使用'fetchAll'而不是'fetchCol':
$fieldsArray = $db->fetchAll("SELECT `YOUR_FIELD`, `YOUR_FIELD_2` FROM `object_query_CLASS-ID`");