我正在创建管理员视图,我可以列出用户并创建用户。
我创建了User
课程,但我不确定如何坚持它。
我是否需要手动创建表单然后保留它?
我已使用普通保存进行了保存,但随后又进行了验证。
我想知道我需要手动编码密码等,或FOSUserBundle
会为我做。
答案 0 :(得分:4)
我认为你不打算使用......
/register
route / method app/console fos:user:create testuser test@example.com p@ssword
...当你在谈论管理员(网络)接口时。
<强>答案:强>
在ContainerAware
班级(即管制员)......
...您可以重复使用默认注册表单并禁用验证:
$user = new User();
$this->createForm(
$this->get('fos_user.registration.form.type'),
$user,
array(
'validation_groups' => false,
)
);
以下是如何手动创建新的User
并将其持久保存到数据库中:
$om = $this->container->get('doctrine.orm.entity_manager');
$manager = $this->container->get('fos_user.user_manager');
$user = $manager->createUser();
$user
->setUsername('nifr')
->setEmail('dont@spam.me')
->setPlainPassword('Insecure123')
->setEnabled(true)
;
$om->persist($user);
$om->flush();