Jquery Laravel 5.4:从url获取数据时不带参数
从控制器中提取视图中的数据时,我注意到一种奇怪的行为:Jquery Laravel 5.4:从url获取数据时不带参数,jquery,laravel-5,laravel-5.4,Jquery,Laravel 5,Laravel 5.4,从控制器中提取视图中的数据时,我注意到一种奇怪的行为: public function getAssessmentPage() { $content= Assessment_Page::all(); $response = response()->json($content); return $response; } 假设我在我的路由(web.php)中定义了此路由: 现在在我的DashboardController中,我有一个返回json的函数: public
public function getAssessmentPage()
{
$content= Assessment_Page::all();
$response = response()->json($content);
return $response;
}
假设我在我的路由(web.php)中定义了此路由:
现在在我的DashboardController中,我有一个返回json的函数:
public function getPageContent($id)
{
$content_model = new Content();
$content = $content_model->getContent($id);
$response = response()->json($content);
return $response;
}
为了在我的视图中实现这一点,我使用Jquery$.get方法:
$.get('user/getPageContent/'+id, function(response){
//logic goes here
});
这很有效。现在,如果我为没有参数的url创建相同的功能,我不会得到响应:我将路由创建为get请求:
Route::get('user/getAssessmentPage', ['uses'=>'Users\DashboardController@getAssessmentPage', 'as'=>'user.assessmentpage']);
在控制器中定义函数:
public function getAssessmentPage()
{
$content= Assessment_Page::all();
$response = response()->json($content);
return $response;
}
并尝试在我的视图中访问它:
$.get('user/getAssessmentPage', function(response){
console.log(response);
});
但我没有得到回应。没有响应,控制台中没有错误,什么都没有。所以我的问题是,对于没有如图所示的参数的url,拉取数据的方法是什么
还应该提到,我甚至尝试了
.load
方法,但仍然没有响应。所以问题就在我的路线上。这就是它们最初的结构:
Route::resource('user', 'Users\DashboardController');
Route::group(['middleware' => ['auth']], function () {
Route::get('user', ['uses'=>'Users\DashboardController@index', 'as'=>'user.layout']);
Route::get('user/displayMenuItems', ['uses'=>'Users\DashboardController@displayMenuItems', 'as'=>'user.menuitems']);
Route::get('user/getSubChapterContent/{id}', ['uses'=>'Users\DashboardController@getSubChapterContent', 'as'=>'user.subchaptercontent']);
Route::get('user/getPageContent/{id}', ['uses'=>'Users\DashboardController@getPageContent', 'as'=>'user.pagecontent']);
Route::get('user/getQuiz/{chapter_id}', ['uses'=>'Users\DashboardController@getQuiz', 'as'=>'user.quiz']);
Route::get('user/getCorrectChoice/{question_id}',['uses'=>'Users\DashboardController@getCorrectChoice', 'as'=>'user.getanswer'] );
Route::post('user/logChapterQuizes', ['uses'=>'Users\DashboardController@logChapterQuizes', 'as'=>'user.logquiz']);
Route::get('user/getAssessmentPage', ['uses'=>'Users\DashboardController@getAssessmentPage', 'as'=>'user.getAssessmentPage']);
});
但是在将Route::resource('user','Users\DashboardController')
移动到Route::group
下面之后,我现在可以得到响应了
路线的顺序很重要
他很幸运地从laracasts那里得到了答案。请参阅此线程:
电话是否正确接通?也许您可以尝试在控制器操作中记录::info('something')