我根据Laravel文档创建了一个Laravel包并设置了所有内容,但问题是与route
相关的Controller
无法正常工作。它会重定向到home
,而不是route
中的指定路径。 route
也显示在route:list
中,但它不起作用。我不知道为什么!
包裹路线档案:
Route::get('calculator', function(){
echo 'Hello from the package route file package!';
});
Route::get('add/{a}/{b}', 'Devdojo\Calculator\CalculatorController@add');
Route::get('subtract/{a}/{b}', 'Devdojo\Calculator\CalculatorController@subtract');
其中route
calculator
工作正常且显示正确的输出,add/5/2
和subtract/5/2
被重定向到家。
如果您查看上面的图像方法,根据中间件
在auth
下添加和减去两个寄存器
CalculatorController:
<?php
namespace Devdojo\Calculator;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class CalculatorController extends Controller
{
//
public function add($a, $b){
echo $a + $b;
}
public function subtract($a, $b){
echo $a - $b;
}
}
答案 0 :(得分:0)
您的代码似乎很好。您有一个中间件附加到重定向到主页的路由。
Route::get('calculator', function(){
echo 'Hello from the package route file package!';
});
Route::get('add/{a}/{b}', 'Devdojo\Calculator\CalculatorController@add');
Route::get('subtract/{a}/{b}', 'Devdojo\Calculator\CalculatorController@subtract');
每当您对套餐进行更改时,都必须执行
composer dump-autoload
以某种方式,中间件附加到您的控制器使用以下代码段来移除middleware
class CalculatorController extends Controller
{
//
public function add($a, $b){
echo $a + $b;
}
public function subtract($a, $b){
echo $a - $b;
}
}
希望这有帮助