Pimcore技术问题:如何按数据对象修改日期对数据对象列表排序?
解决Pimcore数据对象列表按修改日期排序报错问题
你遇到的Column not found: 1054 Unknown column 'o_modificationDate' in 'order clause'错误,是因为误用了数据库原始列名而非实体属性名。
Pimcore的DataObject Listing类中,setOrderKey方法需要传入实体类的属性名称,而非数据库表的列名。正确的属性名是modificationDate,不带前缀o_。
正确代码示例
$news = new News\Listing(); $news->setOrderKey("modificationDate"); $news->setOrder("DESC");
另一种方式:直接操作查询构建器
如果需要直接使用数据库列名,可以通过查询构建器实现:
$news = new News\Listing(); $news->getQueryBuilder()->orderBy('o_modificationDate', 'DESC');
内容的提问来源于stack exchange,提问作者Darius Mann
相关产品推荐
相关产品推荐

