Doctrine Admin Generator的“隐藏”功能

Doctrine Admin Generator的“隐藏”功能

Chris Yue No Comment
Posts

使用Doctrine的Admin generator的同学肯定会经常去两个地方查看相关文档,一个是A Gentle Introduction to symfony – Chapter 14 – Admin Generator,另一个是The symfony Reference Book – The generator.yml Configuration File。不过在使用过程当中你会发现官方的资料还是很不够用的,有很多有用的用法,这两个文档里面是没有提到的。在我使用其功能的过程中,我也发现了不少官方文档里面没说到的“隐藏”秘籍,打算在这里分享给大家。

如何将筛选表单里的文本类型筛选转化为下拉框?
找到对应的filter form class,把要改变的widget改成sfWidgetFormChoice类型,当然对应的validator也要改成sfValidatorChoice类型。完成后还需在class里添加为public的getFields()方法,并在方法写入以下代码(假设你要改变的widget名字叫category):

这样不用在写其他代码就可以正常使用了。
如何添加一个筛选项
如果你想添加一个筛选项,但是这项却是在另外一个表里的数据,比如在电话表里面筛选出名字叫chris的用户的所有电话(电话表里只记录用户id),那么除了在filter form class里面添加username相应的widget和validator,还需要在添加一个public类型的addUsernameColumnQuery方法:

Doctrine Admin Generator的“隐藏”功能 by Chris Yue is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

微信赞赏码

文章可赞,扫码赏饭!
天使投赏人

发表评论

89 + = 97