自列的值以来在sfWidgetFormPropelChoice中使用optgroup

时间:2011-12-02 11:10:29

标签: symfony1 propel

我正在使用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吗?

谢谢。

1 个答案:

答案 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添加了一个版本。