Php Laravel获取随机数的静态数组并将其用于分页

Php Laravel获取随机数的静态数组并将其用于分页,php,laravel,testing,random,pagination,Php,Laravel,Testing,Random,Pagination,我正在开发一个应用程序在拉威尔5.5。。。这是一种测试系统 我想实现的是,当用户点击RunTest时,它将生成随机的问题集(比如5个),然后我希望它们一个接一个地提供给用户。。。我用AJAX进行了分页,这样问题就可以通过页面来解决了。。之后,用户将单击提交,提交表单 我能得到随机的问题列表 在TestController中,方法“exec_test”是 这将得到3个特定测试的随机ID 相同方法中的以下代码是 // get data $data = array (

我正在开发一个应用程序在拉威尔5.5。。。这是一种测试系统

我想实现的是,当用户点击RunTest时,它将生成随机的问题集(比如5个),然后我希望它们一个接一个地提供给用户。。。我用AJAX进行了分页,这样问题就可以通过页面来解决了。。之后,用户将单击提交,提交表单

我能得到随机的问题列表

在TestController中,方法“exec_test”是

这将得到3个特定测试的随机ID

相同方法中的以下代码是

  // get data 
  $data = array (
               'tests' => Test::select('id','code','name',DB::raw('duration_m * 60 as duration_m'),'questions','passing_score')
                              ->where('id','=',$test_id)  
                              ->orderBy('code', 'asc')   
                              ->paginate($this->page_limit),   
      'test_questions' => Question::select('questions.id','questions.question_header','questions.question_detail_local_url')
                              ->join('tests','tests.id','=','questions.test_id')
                              ->where('test_id','=',$test_id)
                              ->whereIn('questions.id',$q_id)
                              //->orderByRaw("RAND()")
                              //->take(4)
                              ->paginate($this->test_question_page_limit),

      'test_answers' => Answer::select('id','answer_text_cleaned')
                              ->whereIn('question_id',$q_id)
                              ->get()                      
  ); 


  // check for ajax requests
  if ($request->ajax()) {  
    return view('/custom/test/run_test_quests', $data)->render();  
  }

  return view('/custom/test/run_test_info',$data);
但我不知道如何使第一个查询保持静态,并将其逐个(每页)提供给用户。。这样他就能解决所有的问题


你有什么建议吗

对第一页进行分页时,第一页将是1,它也将在url中指定

试试这个:

if($request->input('page') ==1)
 {
//code for first page
}else{
//code for random
}

这只是一个建议。抱歉,如果我理解错了问题

而分页第一页将是1,它也将在url中指定

试试这个:

if($request->input('page') ==1)
 {
//code for first page
}else{
//code for random
}

这只是一个建议。对不起,如果我理解错了问题

这将没有效率。。。每个测试都有不同的问题集:(这样做效率不高……每个测试都有不同的问题集:(