我对这个问题感到困惑,如果有人能用具体的例子给我一个解释,我会很感激。我用 Symfony 生成了一个 CRUD 控制器,还为 REST 实现了 FOSRestBundle 控制器。他们都返回相同的数据,我想知道,有什么区别,一个可以做什么而另一个不能?一旦我了解 Symfony2 的做事方式,我想在我正在创建和扩展的原型中只坚持一个。这是 Symfony2 的 CRUD 代码:
/**
* Lists all User entities.
*
* @Route("/", name="user")
* @Method("GET")
* @Template()
*/
public function indexAction()
{
$em = $this->getDoctrine()->getManager();
$entities = $em->getRepository('SomethingWebServicesBundle:User')->findAll();
return array(
'entities' => $entities,
);
}
通过更改此方法名称,我得到了一个 FOSRestController(配置正确)
// "get_users" [GET] /users
public function getUsersAction()
{
$em = $this->getDoctrine()->getManager();
$entities = $em->getRepository('SomethingWebServicesBundle:Users')->findAll();
return array(
'entities' => $entities,
);
}