删除相册功能

This commit is contained in:
Wisp X
2022-01-05 08:56:21 +08:00
parent a00cdb4f7f
commit edb5c2a6b4
7 changed files with 3418 additions and 41 deletions
@@ -9,6 +9,7 @@ use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
class AlbumController extends Controller
{
@@ -44,4 +45,20 @@ class AlbumController extends Controller
$album->update(array_filter($request->validated()));
return $this->success('修改成功');
}
public function delete(Request $request): Response
{
/** @var User $user */
$user = Auth::user();
/** @var Album|null $album */
$album = $user->albums()->find($request->route('id'));
if (is_null($album)) {
return $this->error('不存在的相册');
}
DB::transaction(function () use ($album) {
$album->images()->update(['album_id' => null]);
$album->delete();
});
return $this->success('删除成功');
}
}