这是我的路线代码。我有每个单独前缀的通用路由名称状态,但只使用我在路由的最后定义:
Route::group(['prefix' =>'notice', 'namespace'=>'Admin'], function(){
Route::post('/status','NoticeController@status')->name('status')->middleware('auth');
});
Route::group(['prefix' =>'facility', 'namespace'=>'Admin'], function(){
Route::post('/status','FacilityController@status')->name('status')->middleware('auth');
});
Route::group(['prefix' =>'award', 'namespace'=>'Admin'], function(){
Route::post('/status','AwardController@status')->name('status')->middleware('auth');
});
$(document).ready(function() {
$('.status').click(function(e) {
var id = $(this).val();
$.ajax({
url: "{{route('status')}}",
method: 'post',
data: { id: id, _token: '{{csrf_token()}}' },
success: function(data) {
console.log(id);
},
error: function(response) {
console.log(response);
}
});
});
});
Laravel的路线名称是独一无二的
路由名称前缀
name方法可用于为组中的每个路由名称添加一个给定的字符串。例如,您可能希望使用admin为所有分组路径的名称添加前缀。给定的字符串以完全符合指定的路径名称作为前缀,因此我们一定会在前缀.
中提供尾随的https://laravel.com/docs/5.7/routing#route-group-prefixes字符。
Route::name('notice')->group(['prefix' =>'notice', 'namespace'=>'Admin'], function(){
Route::post('/status','NoticeController@status')->name('status')->middleware('auth');
});
Route::name('facility')->group(['prefix' =>'facility', 'namespace'=>'Admin'], function(){
Route::post('/status','FacilityController@status')->name('status')->middleware('auth');
});
Route::name('award')->group(['prefix' =>'award', 'namespace'=>'Admin'], function(){
Route::post('/status','AwardController@status')->name('status')->middleware('auth');
});
在你的JS部分使用{{ route('award.status') }}