简而言之,我一直在寻找关于如何使用路由前缀的论坛,但我想知道在源代码中Laravel将路由前缀转换为可在视图示例中使用的参数的位置:{customer_id} < / p>
看起来像794的Illuminate / Routing / Route.php getPrefix()用于获取路由实例的前缀;但是,我没有看到实际调用的地方。
我正在尝试使用PHPUnit / Mockery,Doctrine 2和大约15个其他依赖项来测试Laravel 5.2中的控制器。我有admin和customer的路由前缀需要作为参数下拉。现场网站上的所有内容都运行正常,因此我知道实际代码是正确的。其他参数工作正常 - 只是不是静态前缀。这些测试在Eloquent中运行良好,并且在我的经理添加了一堆新的依赖项之前将前缀转换为参数没有问题。现在,在每次测试的测试期间,prefix参数返回null。其中一个新的依赖项破坏了测试所涉及的内容 - 可能是自动加载。
我可能正在查看错误的方向,看看我们如何使用如此多的依赖关系,这使得追踪问题非常困难,但我已经发现了Illuminate \ Support \ Facades \ Route; 在合并之前自动加载,现在需要手动添加到测试用例中。我想知道这是不是我需要做的同样的事情才能使路由前缀正常工作。
答案 0 :(得分:0)
看起来我正在查找错误的地方并将第一个静态前缀转换为变量是一个新的自定义功能,它解析了由同事添加的helpers.php中的路由。然后从中间件调用该方法 - 我关闭了中间件进行测试,因此测试从未检索到第一个参数。