0
我試圖填充數據來編輯窗體。這裏是我的模型加載數據到窗體的ID更新laravel 5.2
public function EditBatch($id,$request){
$data= DB::table('in_batch')
->where('id', $id)
->update(array(
'id'=>$request->input('id'),
'file_name' => $request->input('file_name'),
'batch_type' => $request->input('batch_type'),
'activity_type' => $request->input('activity_type'),
'schedule_time' => $request->input('schedule_time'),
'predecessor' => $request->input('predecessor'),
'priority' => $request->input('priority'),
'batch_remark'=>$request->input('batch_remark'),
'approved_by' => Auth::user()->id,
'approved_on'=>date("Y-m-d H:i:s"),
));
return $data;
}
這裏是我的控制器
public function edit($id){
$obatch = new BatchType();
$batch_type = $obatch->GetBatchTypeDropDown();
$batch = new ManageBatch();
$batch->GetBatchById($id);
return view('batch.edit', array('batch'=>$batch,'batch_type'=>$batch_type));
}
這是我的看法
{!! Form::open (array('url' => array('batch/update',$batch->id), 'class' => 'form-horizontal', 'method' => 'post','id'=>'editbatch')) !!}
<div class="form-group">
{!! Form::label('batch_id', 'batch_id',array('class'=>'col-md-4 control-label')) !!}
<div class="col-md-6">
{!! Form::text('batch_id',$batch->id,array('class'=>'form-control','id'=>'batch_id')) !!}
</div>
</div>
{!! Form::close() !!}
當我試圖加載數據到視圖如上錯誤顯示
未定義的屬性:App \ Models \ Batch \ ManageBatch :: $ id(查看:C:\ wamp \ www \ hutch-in-portal \ resources \ views \ batch \ edit.blade.php)
如何解決這個問題?
三江源
範你解釋你的'編輯($ id)'方法,請解釋每行 – Qazi
請在編輯方法中添加解釋每個函數的代碼。在檢索數據時,很可能你沒有調用'get()'或'first()'方法。 – jaysingkar
其實在這段代碼中有很多不好的做法。不需要逐個獲取每個請求參數或手動設置用戶標識。讓Laravel爲你做好工作,建立雄辯的關係並使用request-> all() - 爲什麼你有一個GetBatchById函數?使用 - > find()|如果這是一個編輯視圖然後使用表單模型綁定來輕鬆設置默認數據 –