我正在使用Symfony 1.2的项目(我知道这已经很老了,但我对此无能为力)。
我有一个sfWidgetFormPropelChoice小部件,它从外键中提供其选项,而不是表A中的存在。我想将表中的另一列的外键与optgroup HTML元素组合在一起。
所以我有类似的东西:
$this->widgetSchema['B_has_A_list'] = new sfWidgetFormPropelChoiceMany(array(
'model' => 'TableA',
));
我希望有一些简单的事情:
$this->widgetSchema['B_has_A_list'] = new sfWidgetFormPropelChoiceMany(array(
'model' => 'TableA',
'optgroup' => 'ColumnInTableA', //That's not possible. It would group options grouping by ColumnInTableA using the optgroup HTML element
));
你知道另一个简单的方法吗?或者你知道实现这个的任何扩展的sfWidgetFormPropelChoice吗?
谢谢。
答案 0 :(得分:1)
好的,我扩展了symfony小部件来实现这一目标。如果有人参与其中,那就是github:
https://github.com/laMarciana/sfWidgetFormChoiceOptgroup
要使用,您必须使用sfWidgetFormPropelChoice
加上optgroup_column
选项定义与要用作optgroups的列的PhpName相同的必需选项。
例如:
$this->widgetSchema['field'] = new sfWidgetFormPropelChoiceOptgroup(array(
'model' => 'Table',
'optgroup_column' => 'Column',
));
我还为Doctrine添加了一个版本。