mirror of
https://github.com/10h30/Test-Laravel-File-Upload.git
synced 2026-06-05 15:07:47 +09:00
45 lines
1.0 KiB
PHP
45 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\House;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Storage;
|
|
|
|
class HouseController extends Controller
|
|
{
|
|
public function store(Request $request)
|
|
{
|
|
$filename = $request->file('photo')->store('houses');
|
|
|
|
House::create([
|
|
'name' => $request->name,
|
|
'photo' => $filename,
|
|
]);
|
|
|
|
return 'Success';
|
|
}
|
|
|
|
public function update(Request $request, House $house)
|
|
{
|
|
$filename = $request->file('photo')->store('houses');
|
|
|
|
// TASK: Delete the old file from the storage
|
|
Storage::delete('houses', $house->photo);
|
|
|
|
$house->update([
|
|
'name' => $request->name,
|
|
'photo' => $filename,
|
|
]);
|
|
|
|
return 'Success';
|
|
}
|
|
|
|
public function download(House $house)
|
|
{
|
|
// TASK: Return the $house->photo file from "storage/app/houses" folder
|
|
// for download in browser
|
|
return Storage::download($house->photo);
|
|
}
|
|
}
|