我有一个查询(一个Query对象):
$joblineitems = $this->JobLineItems->find('all');
它具有结果(ResultSet对象):
$joblineitemsresults = $joblineitems->all();
ResultSet对象是一个Iterable对象,因此foreach()循环将返回每个JobLineItem对象。
我只是想在$joblineitemsresults中添加一个额外的结果--特别是我想在结果的末尾附加一个$this-〉JobLineItems-〉newEntity(),这样当我随后对$joblineitemsresults分页并在视图中循环时,最后一页上循环中的最后一个对象将是一个空对象,其属性为new=true。
如何手动将额外的结果追加到ResultSet对象?
1条答案
按热度按时间piwo6bdm1#
试试这个
您可以查看手册以供参考
尤其要注意最后一段
当从不同的源追加时,您可以预期两个集合中的某些键是相同的。例如,当追加两个简单数组时。这在使用toArray将集合转换为数组时可能会出现问题()。如果您不希望某个集合中的值根据键覆盖前一个集合中的其他值,请确保调用toList()以删除键并保留所有值。
这就是为什么我使用
toList()
而不是toArray()
的原因。如果你使用toArray()
,你会看到新的实体覆盖了第一个实体。当然,您也可以转换数组中的记录集,然后将新实体追加到数组中