在这里无耻的自我推销。本周我写了一篇关于自定义管理生成器的博客文章——我做的一件事就是在生成器中添加新页面等。我这样做的方式可能有点硬核,但效果很好:-)
开始查找的最佳位置是为您的模块自动生成的操作类并在您的app/module/actions/actions.class.php
文件中扩展它。特别是设置 ORM 寻呼机的索引操作。您应该能够使用您的 ORM 中的任何查询来为您的 ORM 寻呼机提供数据——在我需要更改它的情况下,我使用以与正常方式相同的方式生成的 Doctrine 查询来传递给寻呼机。这意味着我可以自定义显示哪些字段,包括在单个查询中加入的其他表中的字段等。这是您上面提到的“表格方法”。
过滤器也可以正常工作 - 这取决于您的用例以及过滤器是否合适,特别是对于显示。如果你想要一个/showpublisheditems page
,那么我会使用一个新的操作和寻呼机的新查询。如果您想要即时定制,请使用过滤器选项。
我认为过滤器文档在某些地方也有点缺乏-快速提示,它们addYourColumnNameColumnQuery()
在您的顶级过滤器类(lib/filter/...)中寻找一个方法,该方法接受传入的查询并使用例如addWhere("x.column_name = ?", $foo)
传递的查询在。
Bleh :-) 抱歉,这有点脑残,但希望它有所帮助!:-)