symfony框架具有app/console文件,可以通过php执行以执行一些维护任务.它还允许用户运行DQL查询:
# php app/console doctrine:query:dql --hydrate=array \
'SELECT u.id, u.nameFirst, u.nameLast FROM DatabaseBundle:User u'
array
0 =>
array
'id' => string '1' (length=1)
'nameFirst' => string 'jaroslav' (length=8)
'nameLast' => string 'rakhmatoullin' (length=13)
1 =>
array
'id' => string '2' (length=1)
'nameFirst' => string 'Båb Kåre' (length=10)
'nameLast' => string 'Ytrefoss' (length=8)
Run Code Online (Sandbox Code Playgroud)
观察我选择了三个特定的列.我遇到的问题是,当两个表连接时,类似的查询会给我一个错误.
# php app/console doctrine:query:dql --hydrate=array \
'SELECT u.id , r FROM DatabaseBundle:User u JOIN u.roles r'
[Doctrine\ORM\Query\QueryException]
[Semantical Error] line 0, col -1 near 'SELECT u.id ,': …Run Code Online (Sandbox Code Playgroud) 我使用此代码获取数据库中的所有用户
$users= $this->getDoctrine()
->getRepository('AppBundle:Users')
->findAll();
return $this->render('livre/users.html.twig',array(
'users' => $users,
));
Run Code Online (Sandbox Code Playgroud)
但我只想得到一些字段 sush as name,email并隐藏像password..这样的字段。谢谢。