Doctrine 如何使用symfony管理生成器、条令和M:N关系
我有一些表的M:N设置。以下是MySQL工作台的ERD屏幕截图: 我是使用Doctrine 如何使用symfony管理生成器、条令和M:N关系,doctrine,symfony1,symfony-1.4,Doctrine,Symfony1,Symfony 1.4,我有一些表的M:N设置。以下是MySQL工作台的ERD屏幕截图: 我是使用原则:生成管理任务为proyectos、centros和unidades生成模块的,但现在我遇到了一个问题:我需要从centros表单添加unidades中的unidades\u has\u centros表中保存n:m关系。我把它放在CentrosForm: public function configure() { $this->widgetSchema['unidad'] = new sfWidget
原则:生成管理任务为proyectos
、centros
和unidades
生成模块的,但现在我遇到了一个问题:我需要从centros
表单添加unidades
中的unidades\u has\u centros
表中保存n:m关系。我把它放在CentrosForm
:
public function configure() {
$this->widgetSchema['unidad'] = new sfWidgetFormDoctrineChoice(array('model' => 'Unidades', 'add_empty' => 'Seleccione una unidad', 'multiple' => true));
$this->validatorSchema['unidad'] = new sfValidatorPass();
}
显示控件,但当我保存数据时,不会将任何内容保存到unidades\u has\u centros
表中。这是我的schema.yml
(使用原则:生成schema
任务生成):
有什么建议吗?您还应该覆盖表单的保存方法。比如:
public function save(){
$object = parent::save($con);
UnidadesHasCentrosPeer::saveItems($this->values['unidad'], $object);
}
在saveItem方法中,您应该定义创建UnidadesHasCentros对象的逻辑
public function save(){
$object = parent::save($con);
UnidadesHasCentrosPeer::saveItems($this->values['unidad'], $object);
}