我有一个Laravel-5.8项目, 如图所示:
Controller.AdminLeavesController GET
use App\Models\Leave;
class LeavesController extends Controller
{
public function leave_review()
{
try {
$leaves = Leave::get();
return view('admin.leaves.leave_review')
->with(['leaves', $leaves);
} catch (Exception $exception) {
Session::flash('error', 'Action failed! Please try again');
return back();
}
}
routeweb.php
Route::group(['prefix' => 'admin', 'as' => 'admin.', 'namespace' => 'Admin', 'middleware' => ['auth']], function () {
Route::get('admin/leaves/leave_review', 'LeavesController@leave_review')->name('leaves.leave_review');
});
视图文件夹是这样的。
admin.leaves.leave_review
layoutsidebar。
<li class="nav-item">
<a href="{{ route("admin.leaves.leave_review") }}" class="nav-link {{ request()->is('admin.leaves') || request()->is('admin.leaves/*') ? 'active' : '' }}">
<i class="far fa-circle nav-icon"></i>
<p>
<span>Leave-Review</span>
</p>
</a>
我有我的 php artisan route:list。
adminleavesleave_review /localhost:8888hrmadadminleavesleave_review
也就是说,adminadmin
当我把管理员前缀去掉后,路由就这样了。
我得到了另一个错误。
错误404页面没有找到,尿道口改为:
Route::group(['prefix' => 'admin', 'as' => 'admin.', 'namespace' => 'Admin', 'middleware' => ['auth']], function () {
Route::get('leaves/leave_review', 'LeavesController@leave_review')->name('leaves.leave_review');
});
http:/localhost:8888hrmadminadminleavesleave_review。
为什么要这样做,如何纠正?
谢谢您
我有一个Laravel-5.8项目, 如图所示: Controller.AdminLeavesController AdminLeavesController使用App\Models\Leave; class LeavesController extends Controller { public function leave_review() { try { $....
因为现在你的路径是adminleavesleave_review. 如果您经常更改路径链接,您可以考虑在视图中使用路径名称作为 route('leaves.leave_review').这样一来,如果名称没有变化,你将始终得到与该名称相关的路由。