我正在symfony2中开发一个项目,导演创建一个项目并将其提交给代理。在创建项目时,导演必须有一个选项,他可以使用该字段旁边的复选框,然后只有代理可以看到该字段的值。
现在代理会看到两个字段,因为它们都被检查。
这是我的项目文档
class Project {
/** @MongoDB\Id */
protected $id;
/** @MongoDB\String */
protected $name;
/** @MongoDB\EmbedOne(targetDocument="ProjectPermissions") */
protected $permissions;
}
ProjectPermissions
class ProjectPermissions {
/** @MongoDB\Id */
public $id;
/** @MongoDB\Boolean */
public $name_permission;
/** @MongoDB\Boolean */
public $type_permission;
}
项目表格
public function buildForm(FormBuilder $builder, array $options) {
$builder->add('name', 'text')
->add('product_name','text')
->add('permissions', new ProjectPermissionsType());
ProjectPermissionsType
class ProjectPermissionsType extends AbstractType {
public function buildForm(FormBuilder $builder, array $options) {
$notRequired = array('required'=>false);
$builder
->add('name_permission','checkbox', $notRequired)
->add('type_permission','checkbox', $notRequired)
}
}
首先,即使表单呈现复选框,也不会将其保存在数据库中。 即使保存了,如何处理?
第二,我是否正确的方向?
第三,那里有捆绑吗?
答案 0 :(得分:1)
发现不存在执行字段ACL的实际捆绑包。 此外,上面的代码工作正常。