2022-12-13から1日間の記事一覧

Laravel バリデーション FormRequest

FormRequest フォームリクエストを使用するとリクエスト作成時にバリデーション処理を挟むことができる。 コントローラでの記述を無くし、ファットコントローラを防ぐ→リファクタリング root@6381a967eccb:/var/www/html# php artisan make:request UploadIm…

Intervention Image リサイズ

前提 Intervention Imageはインストール済 ShopControllerへ記述 $request->imageでviewで指定したname属性を取得することで画像を取得できる $imageFile = $request->image; 画像がnullでなかったら && isValidでアップロードできたか判定 if(!is_null($ima…

Intervention Imageのインストール、Docker上でPHP拡張モジュール「GD」を有効化

Intervention Image 画像リサイズをするためのPHPライブラリ image.intervention.io 無効になってたら有効化→phpinfo();で確認 FileInfo Extension →有効 GD 画像ライブラリ→無効だった →そもそもphpinfo();で確認したが、GDに関する記述がこれだけしかなか…

Laravel 画像アップロード、リサイズなし

概要 バリデーション->1920px x1080pxじゃないとアップロードできないバリデーションをつける 画像サイズ(1920px x 1080px (FullHD)) 比率は 16:9 ->ユーザ側でリサイズしてもらう ->サーバー側でリサイズする場合 -> Intervention Image…

Laravel エラー画面

カスタムエラーページ abortヘルパ関数で指定できる。 abort(404); APIが返すHTTPステータスコード コード 意味 401 不正なエラー 404 Not Found 500 サーバー側エラー $ php artisan vendor:publish --tag=laravel-errors resources/views配下にerrorsフォ…

Laravel コントローラミドルウェア

Shop edit,updateの場合ルートパラメータの注意 edit,updateアクションの場合、URLにパラメータを使うときに注意が必要。 たとえば、以下のようなURLの場合、 /owner/shops/edit/2/ IDの2をURL上から直接変更すると他のownerのidのshopがみれてしまうので、 …

Laravel shop一覧、編集画面遷移、transaction、例外処理

ownersとshopsテーブルの関係 shop作成、transaction、編集画面 shop作成 1つのownerが1つのshopをもつのでowner登録をした際に同時にshopも作るようにする。 →ownerを作成するのはadmin側なので、adminでownerを登録した際にshopも作成する。 編集画面遷移 …

Laravel 外部キー Tinker

外部キー制約 紐づくモデル名+「_id」で外部キーと呼ぶ shopsテーブルにowner_idを作成しownersテーブルのidと紐付ける model migration seederの作成 shopのマイグレーションファイル foreignId('owner_id')->constrained();で「紐づくモデル名_id」として…