diff --git a/app/Http/Controllers/TodoController.php b/app/Http/Controllers/TodoController.php index 1d934b7..23cd852 100644 --- a/app/Http/Controllers/TodoController.php +++ b/app/Http/Controllers/TodoController.php @@ -31,6 +31,12 @@ */ public function store(StoreTodoRequest $request) { + // info($request->all()); // ~/Herd/my-new-site/storage/logs などに出力する。フォームが何を送信しているか確認できる。 + Todo::create([ + 'user_id' => auth()->id(), + 'task' => $request->task, + ]); + return redirect()->route('todo.index')->with('message.success', 'Todo created successfully!'); // } diff --git a/app/Http/Requests/StoreTodoRequest.php b/app/Http/Requests/StoreTodoRequest.php index 0731f85..24c4a34 100644 --- a/app/Http/Requests/StoreTodoRequest.php +++ b/app/Http/Requests/StoreTodoRequest.php @@ -11,7 +11,7 @@ */ public function authorize(): bool { - return false; + return true; } /** @@ -22,7 +22,7 @@ public function rules(): array { return [ - // + 'task' => ['required', 'string', 'max:255'], ]; } } diff --git a/app/Models/Todo.php b/app/Models/Todo.php index 2163c9b..bf37850 100644 --- a/app/Models/Todo.php +++ b/app/Models/Todo.php @@ -9,4 +9,11 @@ { /** @use HasFactory<\Database\Factories\TodoFactory> */ use HasFactory; + + /** + * fillable 配列が定義されていないと、データを保存する際にエラーが発生します。 + */ + protected $fillable = [ + 'task', + ]; } diff --git a/resources/views/todo/index.blade.php b/resources/views/todo/index.blade.php index bc19926..381af77 100644 --- a/resources/views/todo/index.blade.php +++ b/resources/views/todo/index.blade.php @@ -1,4 +1,11 @@ + @if (session('message.success')) +
+
+ {{ session('message.success') }} +
+
+ @endif
@@ -24,5 +31,17 @@
+ +
+
+ @csrf +
+ + +
+
+
+