我是一名学生,我在symfony和stackoverflow非常新,如果我犯了一些错误,那就很抱歉.
我尝试访问该页面时出现以下错误:
[语义错误]从未导入方法AppBundle\Controller\FormController :: newAction()中的注释"@Route".您是否忘记为此注释添加"使用"语句?in/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,
]);
}
}
Run Code Online (Sandbox Code Playgroud)
我不知道是否需要,但这是我的路由配置文件:
# bin/config/routing.yml
fos_user:
resource: "@FOSUserBundle/Resources/config/routing/all.xml"
app:
resource: '@AppBundle/Controller/'
type: annotation
Run Code Online (Sandbox Code Playgroud)
小智 10
你需要检查这个文件:
AppBundle\Controller\FormController.php
Run Code Online (Sandbox Code Playgroud)
看来你没有添加命名空间:
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
Run Code Online (Sandbox Code Playgroud)
请检查一下.
你的类应该是这样的:
/**
* @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,
]);
}
}
Run Code Online (Sandbox Code Playgroud)