【发布时间】:2016-04-26 09:49:14
【问题描述】:
我有一个带有表单的页面,想知道是否可以使用 GET 访问它,但只允许登录用户向它发布。
我知道这可以在 security.yml 中完成,但我不确定如何使用注释来完成。
/**
* @param Request $request
* @return Response
* @Security("has_role('ROLE_USER')")
* @Method(methods={"POST"})
*/
public function calculatorAction(Request $request)
{
$form=$this->createForm(new CallRequestType(),$callReq=new CallRequest());
$form->handleRequest($request);
if($form->isValid()){
//blabla
}
return $this->render('MyBundle:Pages:calculator.html.twig', array('form' => $form));
}
这将保护整个功能,但我想访问它,而不是在没有登录的情况下发布到它。另一种方法是检查 $form->isValid() 括号中是否有登录用户.但是我仍然想知道是否可以使用注释来完成。
【问题讨论】:
-
一点题外话:
@Method注释仅在使用@Route注释的操作时才考虑。 -
很高兴知道,我不知道。
-
我建议你分成两种不同的方法
-
我也这么想,但不想。以为有替代方案。那我想我会同意的。
标签: php symfony symfony-security