【发布时间】:2023-03-24 13:01:01
【问题描述】:
如果用户单击下拉菜单中的按钮,我正在路由用户,但它只会将我重定向到空白页面。
下拉菜单中的按钮图片:
空白页图片:
下拉菜单片段代码:
<li class="nav-item dropdown">
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
{{ Auth::user()->first_name }} <span class="caret"></span>
</a>
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
@can('manage-agent')
<a class="dropdown-item" href="{{ route('agent.flightManagement') }}">
<i class="fa fa-plane" aria-hidden="true"></i>
Flight Management
</a>
<a class="dropdown-item" href="#">
<i class="fa fa-book" aria-hidden="true"></i>
Booking Management
</a>
<a class="dropdown-item" href="#">
<i class="fa fa-user" aria-hidden="true"></i>
User Management
</a>
<a class="dropdown-item" href="#">
<i class="fa fa-address-book" aria-hidden="true"></i>
Passenger Management
</a>
<hr>
@endcan
<a class="dropdown-item" href="{{ route('logout') }}"
onclick="event.preventDefault();
document.getElementById('logout-form').submit();">
<i class="fa fa-power-off" aria-hidden="true"></i>
Logout
</a>
<form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;">
@csrf
</form>
</div>
</li>
web.php 的代码片段:
Route::namespace('Agent')->middleware('can:manage-agent')->group(function(){
Route::resource('/agent', 'AgentsController');
Route::get('agent/flightManagement', 'AgentsController@flightManagement')->name('agent.flightManagement');
Route::post('/agent/store', 'AgentsController@store')->name('agent.store');
});
AgentsController 中的 flightManagement 函数片段代码:
public function flightManagement()
{
return view('agent\flightManagement');
}
我不知道是什么导致了这个问题,因为它只显示一个空白页面,即使在浏览器的控制台中也没有错误,但是在 laravel.log 文件中它显示了这个:
[上一个异常] [对象] (Symfony\Component\Routing\Exception\RouteNotFoundException(代码: 0): 未定义路线 [flightManagement]。在 C:\xampp\htdocs\ChingChong_Airlines\vendor\laravel\framework\src\Illuminate\Routing\UrlGenerator.php:420) [堆栈跟踪]
0 C:\xampp\htdocs\ChingChong_Airlines\vendor\laravel\framework\src\Illuminate\Foundation\helpers.php(782):
Illuminate\Routing\UrlGenerator->route('flightManagemen...', Array, 真的)
1 C:\xampp\htdocs\ChingChong_Airlines\storage\framework\views\8d22c5f09df43b073d10fd0d1dc7f6aa250603dd.php(73):
route('flightManagemen...')
【问题讨论】:
-
在您的刀片文件中的某处,查找
flightManagement并将其替换为agent.flightManagement -
我觉得有点像
route('flightManagement');应该是route('agent.flightManagement') -
我已经有路由('agent.flightManagement')。 route('flightManagement') 返回此错误:Route [flightManagement] 未定义。
-
这就是@user8555937 试图告诉你的:没有定义
route('flightManagement'),请改用route('agent.flightManagement') -
@kerbholz 仍然没有解决问题
标签: php laravel url-routing