我是一名学生,我是symfony和stackoverflow的新手,如果我犯了一些错误,那就很抱歉。
尝试访问该页面时出现以下错误:
[语义错误]方法中的注释“@Route” 从未导入AppBundle \ Controller \ FormController :: newAction()。 您是否忘记为此注释添加“使用”语句?在 / home / buddy / Bachelor / RealBachelor / src / AppBundle / Controller /(这是 从...进口 “/home/buddy/Bachelor/RealBachelor/app/config/routing.yml”)。确保 注释已启用。
这是我的控制器:
<?php
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
class SuccessController extends Controller
{
/**
* @Route("/success", name="success")
*/
public function indexAction(Request $request)
{
$id = "yeah success!!";
return $this->render('default/index.html.twig', [
'id' => $id,
]);
}
}
我不知道是否需要,但这是我的路由配置文件:
# bin/config/routing.yml
fos_user:
resource: "@FOSUserBundle/Resources/config/routing/all.xml"
app:
resource: '@AppBundle/Controller/'
type: annotation
答案 0 :(得分:8)
您需要检查此文件:
AppBundle\Controller\FormController.php
您似乎没有添加命名空间:
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
请检查。
答案 1 :(得分:0)
你的课应该是这样的:
/**
* @Route("/success", name="success")
*/
class SuccessController extends Controller
{
public function indexAction(Request $request)
{
$id = "yeah success!!";
return $this->render('default/index.html.twig', [
'id' => $id,
]);
}
}
答案 2 :(得分:0)
我遇到了一个与您一样的问题,以及一个新下载的带有作曲家和symfony 3.4的项目中的问题。直到我注释掉routing.yml文件,它才开始,然后我顺利启动了项目。 我附上它的外观:
app/config/routing.yml
#app:
# resource: '@AppBundle/Controller/'
# type: annotation
保存更改,然后启动服务器,它应该可以正常工作!
致谢!