Php 如何在Symfony 4中为多条路由添加前缀

Php 如何在Symfony 4中为多条路由添加前缀,php,symfony,routing,Php,Symfony,Routing,我希望命名空间“App\Controller\Api”中的所有控制器操作路由都具有前缀“/Api”。我还想在控制器中使用注释来设置其余的路由 在Symfony 3中,这是通过编辑“config/routing.yml”完成的: app: resource: '@AppBundle/Controller/Api' type: annotation prefix: /api 在Symfony 4中如何执行此操作?我需要打包吗?由于我没有“config/routing.yml

我希望命名空间“App\Controller\Api”中的所有控制器操作路由都具有前缀“/Api”。我还想在控制器中使用注释来设置其余的路由

在Symfony 3中,这是通过编辑“config/routing.yml”完成的:

app:
    resource: '@AppBundle/Controller/Api'
    type: annotation
    prefix: /api

在Symfony 4中如何执行此操作?我需要打包吗?由于我没有“config/routing.yml”,我将使用哪个配置文件?

首先运行
编写器需要注释,然后

use Symfony\Component\Routing\Annotation\Route;

/**
* @Route("/blog")
*/
class BlogController extends Controller
{

}

好的,看起来我应该试一下真正的路径名。以下内容在“config/routes.yaml”中工作:

api:
    prefix: /api
    resource: '../src/Controller/Api'

您仍然可以导入路由并设置前缀,而无需绑定。我看到了那一页。我不知道资源来自哪里,也不知道我的'config/routes.yaml'需要什么。我用
composer create project symfony/skeleton启动了我的项目,在这种情况下,我的项目实际上不需要资源目录。只需创建一个config/routes_api.yaml文件并导入它。您的4.1链接应用于路线名称,而不是路线本身。所以不适用。@Cerad我没有提到我想使用注释来构建路由缓存。config/routes\u api.yaml是否打算包含路由?这是一个很好的示例,但它只向我展示了如何使用yaml文件创建单个路由。我想使用配置文件为特定名称空间中的许多控制器设置前缀,并使用注释设置路由的其余部分。这确实可行,但随后我不得不为需要的每个路由控制器手动键入@route('/api')。我甚至尝试用前缀扩展一个类,但它没有继续。值得一提的是,如果使用注释,可能还需要在此处添加
type:annotation
,否则
无法加载资源。“/src/Controller/Api”
错误可能会发生。