我有一个查询可以从表中选择数据:
public function getOptions($id)
{
$questionOptions = DB::table('question_options')
->where('question_id', '1')
->orderBy('order_number');
//$questionOptions = DB::select('select * from question_options where question_id = '.$id.' order by order_number desc');
//$questionOptions = QuestionOption::all();
$question = Question::find($id);
return view('question.option', ['question' => $question, 'questionOptions' => $questionOptions]);
}
在刀片视图中,我使用此代码显示数据:
@foreach($questionOptions as $item)
<tr>
<td>{{$item->id}}</td>
<td>{{$item->option}}</td>
<td>{{$item->image}}</td>
<td>{{$item->order_number}}</td>
<td>{{$item->is_correct}}</td>
</tr>
@endforeach
当我使用db ::选择时,效果很好。使用DB ::表不起作用。下面的错误。
ErrorException (E_ERROR)
Undefined property: IlluminateDatabaseMySqlConnection::$id
请帮助我,如何使用db :: table?
非常感谢bienhv
只需添加 ->get()
:
$questionOptions = DB::table('question_options')
->where('question_id', '1')
->orderBy('order_number')->get();