Symfony2表单:从实体字段中检索数据

时间:2012-09-07 14:36:48

标签: php symfony

我觉得我错过了一些明显的东西,我有一个实体表单字段,提供了一个可供选择的用户列表,这里的想法是创建一个项目并将其与那个(或几个)用户相关联。我实现了这个没有太多问题,但我无法弄清楚如何访问和使用该表单字段。

以下是我如何设置表单字段:

->add('user', 'entity', array(
'class' => 'DevUserBundle:User',
'label'  => 'Assigned Users: ',
'multiple'=> true,))

在控制器中,我执行以下操作:

$data = $form->getData();

我可以使用$data['user']访问该字段,但除此之外,我迷路了。

1 个答案:

答案 0 :(得分:1)

要查看已选择的用户,synthax与您的建议类似:

$usersSelected = $form["user"]->getData();

修改

您在print_r($userSelected)语句中有这么长列表的原因是因为$userSelectedUser个对象的数组。实际上,正如您在构建器中看到的那样:->add('user', 'entity'...)

你可以这样验证

$i = 1;
foreach ($usersSelected as $user)
{
    echo "User number ".$i;
    echo get_class($user);
    //Assuming that you have the method getUsername() in you User entity
    echo "Username is".$user->getUsername();
    $i++;
}