Open tiger9810 opened 1 year ago
データの管理を担当します。これには、データベースとの対話、問い合わせの実行、データの検証、データの表現形式、ビジネスロジックの実装などが含まれます。
ユーザーが見る画面、つまりユーザーインターフェースを担当します。これには、ユーザーへの出力(HTMLやJSONなど)を生成することが含まれます。
モデルとビューを結びつける役割を果たします。コントローラは、ユーザーからの入力を受け取り、それに基づいてモデルを更新したり、適切なビューを選択したりします。
Laravelでは、ルーティングはユーザーからのHTTPリクエストを適切なコントローラのアクション(メソッド)にマッピング(対応づけ)する役割を果たします。このマッピングは、routes/web.phpファイル(またはapi.php、console.php、channels.phpなど)に定義されます。
routes/web.phpに編集と更新のルートを追加する(Routing)
index.blade.phpに編集リンクを作成する(View)
resources/views/chirps/index.blade.php
を編集してリンクを作成する(参考:編集機能の追加)編集ページの作成(View)
resources/views/chirps/
に新しくedit.blade.php
を作成する。(参考:編集機能の追加)ChirpsControllerにedit,updateメソッドの追加(Controller)
app/Http/Controllers/ChirpController.php
(参考:編集機能の追加)編集に権限を加える
Model Policyを作成することで、Chirpsの作成者しか編集できないようにする。 以下のコマンドを実行すると、
app/Policies/ChirpPolicy.php
が作成される。./vendor/bin/sail artisan make:policy ChirpPolicy --model=Chirp
app/Policies/ChirpPolicy.php
を開いて、return $chirp-user()->is($user);
を追加する。