[Laravel] Testでデータ削除してるのに assertDatabaseMissing が Failed になる
削除しようとしているそのモデル、SoftDelete 設定になってません?
assertDatabaseMissing ではなく assertSoftDeleted 使ってね。
詳細テストコードをたくさん書いていくぜー!
って張り切ったものの、めっちゃ足止め食らいました…。
リモートデバッグで1行ずつ動かしても、
App\Models ...
[Laravel] Test (PHPUnit) 実行時に InvalidArgumentException: Unable to locate factory with name [default] のエラーが出る
setUp() 内で parent::setUp() 呼ぶの忘れてない?(公式にも「テストクラスに独自のsetUpメソッドを定義する場合は、親のクラスのparent::setUp()/parent::tearDown()を ...
[Laravel] root 外のファイルにアクセスしたら laravel Path is outside of the defined root と怒られたのでどうにかしたい
config/filesystems.php に、自前で設定を追加すればOK。
詳細Laravel のデフォルト設定だと、
'local' => ,となっておりまして、 プロジェクトルート/storage/app が起点になってました。
例えば、/storage/temp にある全ファイルを取得したい、という場合に、
$tempfiles ...
[Laravel] 有効な日付かどうか?のバリデーションでアホみたいに悩んだ話 [PHP][日付][Carbon][Validation]
PHP に checkdate() 関数が用意されてました…。
PHP: checkdate – Manual
言い訳年月日、もしくは年月のみがパラメーターで渡されてくる場合に、年月日として有効かどうか?のパリデーションをかけたかったわけです。
で、Carbon とかで用意されてる…よね? とか思っていろいろ探してたら見つからなくて、PHP ...
[Laravel] Laravel-Excel(Ver3.x)でCSVが文字化けするのは設定が間違っているからでした
忘れずに WithCustomCsvSettings を implement する。
2つ目を忘れてると、getCsvSettings() 用意しておいても無視されて気づかないのです…。
詳細Excelで csv ファイルを開いたときに文字化けする現象で ...
[Laravel] migration ファイルを作り直したい(がファイル削除してやり直したらエラーになってしまった)
composer dump-autoload 実行
もっかい作る
詳細php artisan make:migration add_new_columns_to_user_table
とか実行した後に、「あ、しまった、 --table 指定するの忘れたー!」と思って再作成。
すると
failed ...
[Laravel] Queue Workerが(Logを吐いてくれない|debugできない|breakpointが効かない)
QUEUE_DRIVER=database にしておけば failed_jobs テーブルの exception カラムに StackTrace が記録されるので、そこから辿るべし。
詳細Queue に突っ込んだ処理をデバッグしようとしても全然言うこと聞いてくれない。
ブレークポイントが効かないので、仕方なく Log::debug() したりもしたんだけれど、何も ...
[Laravel] EloquentのJOINで複数条件を指定したい
DB::table() ->leftJoin() で第二引数にクロージャーを渡せるので、その中でフィルタ的な処理を書き込む。
詳細ユーザーが投稿した記事の一覧を取得する際はこんな感じで LEFT JOIN を指定。
$users = DB::table('users') ->leftJoin('posts', 'users.id', '=', 'posts. ...
[Laravel] htmlspecialchars() expects parameter 1 to be string, array given (View: …/index.blade.php) が出たら疑った方がいいヤツ
ありがちなのが、
{{ $user->getFirstName() }}の $user->getFirstName() で、なぜか配列(文字列ではなく)が返ってきていた、というヤツ。
詳細「これ、なーんかあったよなー…🤔」
って毎度悩むのでメモ。
bladeでこのエラーが発生すると、妙に場所の特定が難しいんですよね…。
[Laravel] リレーション先の最新日付を取得したい
Post と Comment (1対多の関係)を例にすると、
コントローラーからフツーに $posts を view に渡して…。
blade のループ内で
@forelse($posts as $post) <div>{{ $post->title }}</div> <div>{{ $post->commen ...