У меня есть 3 лица.«вызов» / «команда» / «пользователь» Я пытаюсь добавить значения во встроенную форму, например:
class ChallengeController extends Controller
{
public function newAction($id, Request $request)
{
// 1. Get known users
$user = $this->container->get('security.context')->getToken()->getUser();
$challengedUser = $this->getDoctrine()->getRepository('ApplicationSonataUserBundle:User')->find($id);
// 2. Create new team
$team = new Team();
$teamOpponent = new Team();
// 3. Add known players to corresponding teams
$team->addUser($user);
$teamOpponent->addUser($challengedUser);
// 4. Create new challenge and add teams
$challenge = new Challenge();
$challenge->addTeam($team);
$challenge->addTeam($teamOpponent);
// 5. Create new form
$form = $this->createForm(new ChallengeType(), $challenge);
return $this->render('TennisconnectDashboardBundle:Challenge:new.html.twig', array('form' => $form->createView(), 'challengedUser' => $challengedUser));
}
}
// Редактировать: добавлен вызов типа
class ChallengeType extends AbstractType
{
public function buildForm(FormBuilder $builder, array $options)
{
$builder
->add('teams', 'collection', array(
'type' => new TeamType(),
'allow_add' => true
))
->add('place')
->add('date');
}
public function getName()
{
return 'challenge';
}
public function getDefaultOptions(array $options)
{
return array('data_class' => 'Tennisconnect\DashboardBundle\Entity\Challenge');
}
}
КогдаФорма вызова выдается, я ожидаю, что значения 2 игроков заполнены. Но они просто пустые.Что я делаю не так?
Thx.