eli*_*lon 1 php forms doctrine symfony1 widget
我有一个名称和姓氏列的用户模型.我正在尝试使用表单创建一个选择器,默认情况下只显示名称值.sfWidgetFormDoctrineChoice
如何修改窗口小部件以显示名称和姓氏?我知道你可以在初始化小部件时传递一个查询选项,但我不能让它工作:
$this->setWidget('user_id', new sfWidgetFormDoctrineChoice(array(
'model' => $this->getRelatedModelName('User'),
'query' => Doctrine_Query::create()->select('u.name, u.surname')->from('User u'),
'add_empty' => false)
));
Run Code Online (Sandbox Code Playgroud)
谢谢!
使用该method选项并public function在User模型中创建所需的任何方法名称.一个例子可能是:
$this->setWidget('user_id', new sfWidgetFormDoctrineChoice(array(
'model' => $this->getRelatedModelName('User'),
'method' => 'getFullName',
'add_empty' => false)
));
Run Code Online (Sandbox Code Playgroud)
然后在你的lib/model/Doctrine/User.class.php文件中
public function getFullName() {
return "{$this->getName()} {$this->getSurname()}";
}
Run Code Online (Sandbox Code Playgroud)