我正在开发基于 Symfony 4 和 Select2 库的应用程序。
在我的src/Form/PostType.php
文件中,我声明了字段标记,用户应该能够在其中设置一个预先声明的Tag
或添加新的(通过类型标记名称并按回车键)。
$builder
->add('tags', EntityType::class, [
'class' => Tag::class,
'choice_label' => 'name',
'mapped' => false,
'expanded' => false,
'multiple' => true,
'required' => false,
]);
从前端我使用 select2 库来处理显示标签字段。
在下面的示例中,第一个标签是从数据库中存在的实体中选择的,第二个应该保存在这一秒内。
知道我应该将什么更改为归档声明以使该字段对新标签也有效吗?控制器已准备就绪,唯一的问题是通过表单验证 :)
编辑:
ORM 中的关系如下所示:
class Company {
/**
* @ORM\ManyToMany(targetEntity="App\Entity\Tag", mappedBy="companies")
*/
private $tags;
}
class Tag
{
/**
* @ORM\ManyToMany(targetEntity="App\Entity\Company", inversedBy="tags")
*/
private $companies;
}
除了上面的代码之外,没有其他验证