【发布时间】:2020-05-19 09:21:39
【问题描述】:
如何在 SilverStripe 中编写以下查询以获取特定列数据。
SELECT Title FROM Devmac_Object_ProductType WHERE ID IN ($strProductListID)
【问题讨论】:
标签: php mysql silverstripe
如何在 SilverStripe 中编写以下查询以获取特定列数据。
SELECT Title FROM Devmac_Object_ProductType WHERE ID IN ($strProductListID)
【问题讨论】:
标签: php mysql silverstripe
假设Devmac_Object_ProductType 是代表Devmac\Object\ProductType 数据对象的表,$strProductListID 是一个扁平的 ID 数组:
use Devmac\Object\ProductType;
$strProductListID = [1,2,7];
$filteredProductTitles = ProductType::get()->filter('ID', $strProductListID)->column('Title');
您还可以使用map('ID', 'Title') 获取 ID 到标题的映射:
$filteredProductTitles = ProductType::get()->filter('ID', $strProductListID)->map('ID', 'Title');
这将返回一个Map,可以使用->toArray() 将其转换为关联数组。
请参阅Managing Lists 上的开发者文档。
【讨论】: