我知道必须有比我想象的更简单的方式,所以我要问这里。
我想从此处传递$exam->id
(当您点击开始测试时)
@foreach($category->exams as $exam)
<tr>
<td>{{$exam->id}}</td>
<td>{{$exam->title}}</td>
<td>od {{$exam->start_date}} do {{$exam->end_date}}</td>
<td class="center"><span class="badge">{{$exam->number_of_points}}</span></td>
<td class="center"><a href="#"><i class="fa fa-arrow-circle-right"></i> Start test</a></td>
</tr>
@endforeach()
这应使用此路由并传递该变量
Route::get('exam','ExamController@create'); // this is where i dont know how to set route to pass to another one
ExamController
public function create() {
return View::make('exam.index');
}
并且当用户点击提交时,它会将$ exam_id发送到ajax以显示该检查
{{ Form::open(['data-remote', 'method' => 'GET', 'route' => ['exam_data',$exam_id]]) }}
<div class="exam-name">
</div>
<div class="form-group exam">
Click Start to start the test!
</div>
<div class="form-group">
{{ Form::submit('Start', ['class' => 'btn btn-default','id'=>'btn-next-question', 'data-confirm']) }}
</div>
{{Form::close()}}
提交按钮的路线
Route::get('exam/{id}',['as' => 'exam_data', 'uses' => 'ExamController@getExambyNumber']);
当我在该表单上放置1个随机考试ID号而不是$exam_id
时,一切正常,我不知道如何通过它。任何帮助表示赞赏。
答案 0 :(得分:0)
我首先想到了我所做的是更改Start Test以将数组传递给Route
<td class="center"><a href="{{ URL::route('exam_id', array('id'=>$exam->id)) }}"><i class="fa fa-arrow-circle-right"></i> Start Test</a></td>
考试路线
Route::get('exam',['as' => 'exam_id', 'uses' => 'ExamController@create']);
在控制器中看起来像
public function create()
{
$exam_id = Input::get('id');
return View::make('exam.index', array('exam_id' => $exam_id));
}
其余的代码是一样的。