Skip to content

Commit 383cf3a

Browse files
committed
#9 softDelete機能作成完了
1 parent 48bb2b4 commit 383cf3a

File tree

3 files changed

+26
-1
lines changed

3 files changed

+26
-1
lines changed

app/Http/Controllers/PostController.php

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,18 @@ public function update(Request $request)
147147
}
148148
}
149149

150+
public function destroy(Request $request)
151+
{
152+
$id = $request->input('id');
153+
154+
DB::transaction(function() use ($id) {
155+
// 対象の投稿を論理削除
156+
$this->post->softDelete($id);
157+
});
158+
159+
return redirect('/');
160+
}
161+
150162
public function eval()
151163
{
152164
$postId = request()->post('postId');

app/Services/PostService.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,4 +316,17 @@ public function updatePostDetail(string $address, int $postId)
316316

317317
DB::update($sql, $params);
318318
}
319+
320+
public function softDelete(int $id)
321+
{
322+
$sql = 'UPDATE posts SET deleted_flg = :deleted_flg'.PHP_EOL;
323+
$sql .= 'WHERE posts.id = :postId'.PHP_EOL;
324+
325+
$params = [
326+
'deleted_flg' => true,
327+
'postId' => $id,
328+
];
329+
330+
DB::update($sql, $params);
331+
}
319332
}

routes/web.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@
2626
Route::get('/show/{id}', [PostController::class, 'show'])->name('show');
2727
Route::get('/edit/{id}', [PostController::class, 'edit'])->name('edit');
2828
Route::put('/update', [PostController::class, 'update'])->name('update');
29-
Route::delete('/delete', [PostController::class, 'delete'])->name('delete');
29+
Route::delete('/delete', [PostController::class, 'destroy'])->name('delete');
3030

3131
Route::post('/ajax/eval',[PostController::class, 'eval'])->name('ajax/eval');

0 commit comments

Comments
 (0)