3
我需要解決一個小的不便之處,當修改相關的註冊表時,我正在展示更新的圖像。Laravel 5.4替換文件,如果存在
當我修改註冊表時,我想替換目錄中的關聯文件。
這是我的表結構:
Schema::create('institutions', function(Blueprint $table)
{
$table->engine = 'InnoDB';
$table->increments('id');
$table->string('name')->unique();
$table->string('initials')->nullable();
$table->string('description')->nullable();
$table->string('avatar')->default('default.jpg');
$table->timestamps();
});
這是我的控制器上我的更新方法:
public function update(Request $request, $id)
{
//
$institution = $this->institution->find($id);
try
{
$institution->update($request->all());
if($request->hasFile('avatar')){
$avatar = $request->file('avatar');
$filename = time() . '.' . $avatar->getClientOriginalExtension();
Image::make($avatar)->resize(250, 205)->save(public_path('uploads/institutions/' . $filename));
$institution->avatar = $filename;
$institution->save();
}
$updated = $institution;
$message = flash('Institución actualizada correctamente!!!', 'success');
return redirect()->route('instituciones.index')->with('message', $message);
}
catch(\Illuminate\Database\QueryException $e)
{
$message = flash('La institución no se actualizó correctamente!!!', 'danger');
return redirect()->route('institutions.create')->with('message', $message);
}
}
我嘗試了多種不同的方法,但我還沒有成功。
會發生什麼事,當你運行上面的代碼?例外? 500錯誤?請更具體地... – idelara