【发布时间】:2014-02-01 23:34:43
【问题描述】:
我开始使用 Symfony2 进行开发,看起来我需要帮助。我有与 SynchronizationSetting 实体相关的产品实体。我可以通过与他的实体映射的表单来编辑产品数据。但是我还需要在 SynchronizationSetting 中修改一些与产品相关的数据。为此,我修改了表单,使其看起来像这样 (Vendor\ProductBundle\Form\ProductType.php):
...
->add('synchronization_setting', 'choice', array(
'choices' => array('daily' => 'Daily', 'weekly' => 'Weekly', 'never' => 'Never'))
提交表单后,选中的复选框值将传递给产品实体中的 setSynchronizationSetting 方法。然后我这样做(供应商\ProductBundle\Entity\SynchronizationSetting.php):
public function setSynchronizationSetting($data)
{
$synchronizationSetting = new SynchronizationSetting();
$synchronizationSetting->setDaily(in_array('daily', $data) ? '1' : '0');
...
}
现在我需要以某种方式将这些 SynchronizationSetting 实体保存到数据库中。我读到从这里调用实体管理器是非常糟糕的做法,所以......我应该如何保存它?
【问题讨论】:
标签: php symfony orm entity relation