我將所有控制器移至 Symfony 6 專案中的 /src/Web/Controller
,如下所示
├── src │ ├── ... │ └── Web │ | ├── Controller │ | ├── .... | |── Kernel.php
我的routes.yaml
相應修改
#routes.yaml controllers: resource: ../src/Web/Controller/ type: annotation
現在的問題是我的所有路由都有一個以 app_web
為前綴的名稱。我想這是由於這種結構。
$ php bin/console debug:router
指令輸出如下:
... ... app_web_post_index GET|HEAD ANY ANY /post/ app_web_post_create GET|HEAD|POST ANY ANY /post/create
這裡我只希望名稱為 post_
如果您沒有明確命名路由,它們會為您命名。
名稱是使用控制器的類別和方法的完全限定名稱產生的(儘管由於某種原因沒有命名空間的最後一部分 -
controller
)。如果您不想使用自動產生的名稱,只需自己命名您的路線即可:
使用%E