RT.
最近楼主在研究ThinkPHP 3.2.2版本。在研究到form表单的提交问题的时候,发现使用框架提供的常量__URL__进行设置的时候,其所提供的URL路径总是会缺失了入口文件的身影。例如我有两个模块,一个是Home模块,一个是Admin模块,在使用__URL__简化我的action路径的时候总是会出现路径中间没有index.php或者是admin.php入口文件的问题。
于是楼主开始了研究:
1.__URL__是系统自我提供的常量。是判断当前Controller控制器的路径,不能够通过自定义来修改。一开始楼主想到的方法是通过死定义,也即写死form提交的时候action对应的action的URL路径,也即__APP_/admin.php/Admin/User/update。但是很明显这种情况是非常不讨好的。故虽然能够实现,我还是抛弃了。
2.通过研究__URL__的实际输出,楼主发现,__URL__其实是隐藏了入口文件。如果我使用了__URL__/update来定义form的action的话,实际上解析出来的路径是__APP__/Admin/User/update。所以楼主找到了方向,要使得__URL__/update这个方法可以使用,那么我要通过下面两个方法来实现:
2.1 项目通过一个入口文件,index.php来进入,然后根据后面模块的名称自动选择模块。