我有一個包含以下列值的專案表:
id_project name website country_id currency_id timezone_id
==========. ==== ======= ==========. ===========. ===========
1 project name. www.yahoo.com. 10 8 10
我有上述欄位的表格。現在,當我按下提交時,我可以看到我可以使用以下方法更新表單欄位資料:
dd($request);
但是使用此代碼資料庫不會更新:
public function update(Request $request, $id)
{
//dd($request); // It's showing me updated form fields value
$project = Project::where('id_project', $id)->first();
$project->name = $request->name;
$project->country_id = $request->country;
$project->currency_id = $request->currency;
$project->timezone_id = $request->timezone;
$project->website = $request->website;
$project->save();
return response()->json($project, 200);
}
更新:
奇怪的東西。如果我運行它,它不會更新
$project = Project::where('id_project', $id)->update(['name' => $request->name ]);
但是如果我手動添加值:
$project = Project::where('id_project', $id)->update(['name' => 'example data' ]);
它正在更新資料庫。
任何想法?
uj5u.com熱心網友回復:
請確保您的$id變數中有任何值。您也可以嘗試將其轉換為 DB Query Builder
public function update(Request $request, $id)
{
DB::table('projects')->where('id_project', $id)->update([
'name' => $request->name,
'country_id' => $request->country,
'currency_id' => $request->currency,
'timezone_id' => $request->timezone,
'website' => $request->website
]);
}
但首先檢查是否dd($id)有dd($request->all())任何值。
uj5u.com熱心網友回復:
public function update(Request $request, $id)
{
$project = Project::find($id);
$project->name = $request->name;
$project->country_id = $request->country;
$project->currency_id = $request->currency;
$project->timezone_id = $request->timezone;
$project->website = $request->website;
$project->save();
}
嘗試這個!
uj5u.com熱心網友回復:
laravel 中更新記錄的最佳實踐是:
public function update(Request $request, $id)
{
$project = Project::find($id);
$project->name = $request->name;
$project->country_id = $request->country;
$project->currency_id = $request->currency;
$project->timezone_id = $request->timezone;
$project->website = $request->website;
$project->save();
}
你也可以使用這個:
$data = array(
'compania_id' => $request->get("compania"),
'nombre_tratamiento' => $request->get("nombre_tratamiento"),
'precio_sesion' => $request->get("precio_sesion"),
);
$tratamiento = TreatmentCompany::find($request->get("cod_tratamiento"));
$result = $tratamiento->update($data);
return $result;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/495401.html
