0
ビューでは、リンクされた値を表示したいが、リンクされた値はすべて、ユーザーアクセスに依存するため表示できません。ParamConverter:リポジトリにCurentユーザーを挿入
これを行うには、 - > where( 'user'、$ user)のleftJoinを実行するだけです。問題は、ParamConverterからリポジトリに現在のユーザを注入するにはどうすればいいですか?
ビューでは、リンクされた値を表示したいが、リンクされた値はすべて、ユーザーアクセスに依存するため表示できません。ParamConverter:リポジトリにCurentユーザーを挿入
これを行うには、 - > where( 'user'、$ user)のleftJoinを実行するだけです。問題は、ParamConverterからリポジトリに現在のユーザを注入するにはどうすればいいですか?
Doctrineを使用していると仮定すると、これはうまくいくはずです。
コントローラでは、
$objRepo = $this->getDoctrine()->getManager()->getRepository('AppBundle:Objects');
$files = $this->objRepo->getAllForUserId($this->getUser()->getId());
あなたのレポファイルにあります。
public function getAllForUserId($user_id, $limit=100)
{
if (null === $user_id) {
throw new ORMInvalidArgumentException('User id not set');
}
$queryBuilder = $this->createQueryBuilder('obj');
$queryBuilder->select(array('obj', 'usr'))
->innerJoin('obj.users', 'usr')
->where('usr.id = :user_id')
->setParameter(':user_id', $user_id)
->orderBy('file.created', Criteria::DESC);
$query = $queryBuilder->getQuery();
return $query->getResult();
}
symfonyのロールシステムを使用してユーザーアクセスを完了しましたか? – Rooneyl
http://stackoverflow.com/q/8153103/1220930 – Timurib
はい、彼はビューにアクセスすることができますが、ビューでは、私は他のオブジェクトをリストし、彼がアクセスできるオブジェクトのみをリストしたいと思います。これを行うには、結果をフィルタリングするために現在のユーザーを指定するクエリを実行する必要があります。 – mpiot