ThinkPHP6路由所带来的坑
ThinkPHP6在使用路由时,很容易碰到的坑,那就是 模块-控制器-方法都已经写,仍旧访问不到正确的方法。本篇文章记录一下多模块路由的访问。
第一步:安装多模块
composer require topthink/think-multi-app
第二步:删除controller
单模块目录
第三步:新建两个测试模块,分别是 test和demo
第四步:在这两个模块中分别新建route
目录,并建立对应的路由文件
test/route/test.php
和demo/route/demo.php
这两个路由文件建立完成后就可以正常编写路由文件了,如:
<span style="box-sizing: border-box;padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(84, 110, 122)">// demo/route/demo.php</span></span><br></br><span style="box-sizing: border-box;padding-right: 0.1px"><span style="box-sizing: border-box"><?</span><span style="box-sizing: border-box;color: rgb(130, 177, 255)">php</span></span><br></br><span style="box-sizing: border-box;padding-right: 0.1px"><span style="box-sizing: border-box"></span></span><br></br><span style="box-sizing: border-box;padding-right: 0.1px"><span style="box-sizing: border-box;color: rgb(130, 177, 255)">\think\facade\Route</span>::<span style="box-sizing: border-box;color: rgb(130, 177, 255)">get</span>(<span style="box-sizing: border-box;color: rgb(195, 232, 141)">'test'</span>, <span style="box-sizing: border-box;color: rgb(195, 232, 141)">'demo/Index/test'</span>);</span>
注意,这里的坑来了。可以通过
域名.com/test
进行访问了吗?结果是,报错!路由文件写错了吗?没有写错。坑点一:路由文件名一定要路由模块名一致,不然会报错;
坑点二:访问路由时,一定要带上模块名,如
域名.com/demo/test
,这样才能访问,不然会报错。
我是温新
每天进步一点点,就一点
请登录后再评论