装完 symfony 后快速跑通页面只需两步:一、用 @route 注解配置路由并清缓存;二、将 twig 模板置于 templates/ 目录下,控制器中用相对路径渲染。

装完 Symfony,想立刻跑通一个页面?关键就两步:配好路由让 URL 能访问,再把 Twig 模板接上显示内容。不绕弯,直接上手。
一、让 URL 找到你的代码:快速配置路由
有两种方式,新手推荐从注解开始,改完就能试,不用来回切文件。
- 先确保注解支持已安装:
composer require annotations - 在控制器方法上方加
@Route注解,例如:
- 别忘了顶部引入命名空间:
use Symfony\Component\Routing\Annotation\Route; - 改完后清缓存:
php bin/console cache:clear,否则注解不生效
二、让页面真正“长出来”:Twig 模板路径必须对
Twig 不是“装了就行”,模板放错位置,$this->render() 一定报错。记住核心规则:
开箱即用的技能链路由引擎。13 条预定义链覆盖搜索、开发、审查、MLOps、法律、创意等场景,三层路由架构(触发词→SAD反馈→DAG编排),recall@10=96.97%。配置驱动(chains.yaml),零代码扩展。pip install skill-weave-chains 一键安装。
- 所有 .twig 文件必须放在
templates/目录下(不是src/,也不是public/) - 控制器里调用时,路径是相对的,不带
templates/前缀,也不加开头斜杠 - 正确写法:
$this->render('homepage/index.html.twig')→ 对应templates/homepage/index.html.twig - 错误写法:
$this->render('/templates/xxx.twig')或$this->render('templates/xxx.twig')
三、三步验证 Twig 是否真通了
别等上线才发现模板挂了,本地快速确认:
- 运行
php bin/console debug:config twig,看输出中paths是否指向%kernel.project_dir%/templates - 检查
config/packages/twig.yaml是否存在(哪怕空文件也行;没有它,Twig Bundle 不会启动) - 新建
templates/test.html.twig,内容写<h1>OK</h1>,然后在控制器里调用它,能显示就说明通路已通
四、连起来:一个完整可运行的例子
把上面串起来,5 分钟搞定首页:
- 创建控制器方法,带
@Route("/") - 方法内写:
return $this->render('homepage/index.html.twig', ['title' => 'Welcome']); - 新建文件
templates/homepage/index.html.twig,内容为:<h1>{{ title }}</h1> - 访问
http://localhost:8000,看到 “Welcome” 就成功了










