【发布时间】:2017-12-31 06:30:49
【问题描述】:
我有一个代理实体 有一个字段 $owns
看起来像
/**
* @ORM\ManyToMany(targetEntity="AppBundle\Entity\ShipType", inversedBy="owners")
*/
protected $owns;
关于 ShipType 实体 我有
/**
* @ORM\ManyToMany(targetEntity="AppBundle\Entity\Agency", mappedBy="owns")
*/
private $owners;
doctrine 创建了一个关系表,用于关联具有机构 ID 和船舶类型 ID 的表
我正在尝试获取一个表格,用于将每个代理分配到一个船舶类型(拥有) 我试图以代理的身份实现日志记录
目前为止
public function gShips(Request $request): Response {
$u = $this->getUser();
$ag = new Agency();
$form = $this->createForm(ChooseShipsType::class, $ag);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$em = $this->getDoctrine()->getManager();
$a = $form->getData();
$em->persist($a);
$em->flush();
}
return $this->render('agency/sships.html.twig', [
'adForm' => $form->createView()
]);
}
和表格
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('ships', EntityType::class, [
'class' => 'AppBundle:ShipType',
'expanded' => true,
'multiple' => true,
])
->add('save', SubmitType::class)
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => 'AppBundle\Entity\Agency'
]);
}
表单正在显示,但由于它正在尝试创建一个新的代理,所以无法使其持久化,我不知道如何使用这两个表之间的关系表
提前谢谢你
【问题讨论】:
标签: php symfony doctrine-orm