Laravel

Laravel でアクセストークンを header に含むときのAPIのテストを書く

いつ使うの? SPAではないプロジェクト(アクセストークンの取得タイミングがMPAでのログイン時) 一部画面でアクセストークンを含むAPIを叩いている コード post('/login', [ 'email' => 'hoge@example.jp', 'password' => 'password' ]);…

Laravel で画像をアップロードする Controller のテストを書く

Laravel で画像アップロードのController周りのテストを書いたことがなかったので備忘録 post('image/upload', ['images' => UploadedFile::fake()->image('hoge.jpg')]); $res->assertRed…

Carbon の diffInDays() は時間まで見ている

みんな大好きCarbonで対象日が今日の何日後かを知りたいときに, 想定していた挙動と違っていたのでメモ 対象日が本日の何日後かを知りたい 2021-11-15が本日(2021-11-14)の何日後かを知りたいとき >>> now()->diffInDays(Carbon\Carbon::parse('2021-11-15')…

Laravel で ORDER BY を複数指定する

Laravel で SELECT * FROM samples ORDER BY column1 DESC, column2 ASC みたいに ORDER BY を複数指定したい場合の書き方 orderBy('column1', 'asc')->get(); もしくは orderBy('column1')->get(); 何故か毎回連想配列でできると思いこんでApp\Models\Sampl…

Vue.js でファイルアップロードをする

Vue.js というより axios でファイルアップロードをしたかった 保存ボタンがなく、アップロード時にサーバーに送るのを想定 サーバーサイドのFWは Laravel を想定 <template> <div> <input type="file" ref="image" accept="image/*" name="image" @change="uploadImage" /> </div> </template> <script> import axios from "axios"; export default { name: "…

Laravel でQueryBuilderで組み立てられたSQLを確認する方法

QueryBuilder(or Eloquent ORM)で組み立てたSQLを確認したい時に使う いずれも tinker で実施 ①QueryBulderから確認する場合 >>> App\Models\User::where('id', 1)->toSql() => "select * from `users` where `id` = ?" ②複数のQueryBuilderから確認したい場…

Laravel の Eloquent ORM でサブクエリを作る

日付単位で number の合計が10以上のレコードのみを抽出する データ id target_date number 1 2021-09-01 1 2 2021-09-02 2 3 2021-09-01 3 4 2021-09-03 4 5 2021-09-04 4 6 2021-09-11 2 7 2021-09-06 5 8 2021-09-12 23 9 2021-09-12 10 10 2021-09-23 20…