このトピックに関する他の質問を読みましたが、私のアプリはまだ機能しません:(
これが私のコードです:
class ChooseCatType extends AbstractType
{
protected $user;
function __construct(\EM\MyFriendsBundle\Entity\User $user)
{
$this->user = $user;
}
public function buildForm(FormBuilder $builder, array $options)
{
$builder->add('name', 'entity', array(
'class' => 'EMMyFriendsBundle:Category',
'property' => 'name',
'query_builder' => function ($repository) use ($user)
{ return $repository->createQueryBuilder('cat')
->select('cat')
->where('cat.user', ':user')
->setParameter('user', $user);
},
));
}
public function getName()
{
return 'choose_category';
}
}
これは私のコントローラーにあります:
$cat = new Category();
$dd_form = $this->createForm(new \EM\MyFriendsBundle\Entity\ChooseCatType($user), $cat);
しかし、エラーが発生します:
Notice: Undefined variable: user in C:\xampp\htdocs\MyFriends\src\EM\MyFriendsBundle\Entity\ChooseCatType.php line 24
これはuseステートメントの行です。私のコードと、具体的なリポジトリを使用している他の関連する質問への回答には違いがありますが、これは問題ではないと思います。それともそうですか?解決策を見つけるのを手伝ってください。