[Laravel] 5.8.33がリリースされました

laravel/frameworkのバージョン5.8.33がリリースされました。追加された機能について確認します。

ValidatesWhenResolvedTraitクラスにpassedValidation()メソッドが追加されました (#29549)

FormRequestクラスを使ってリクエストのバリデーションを行なった後に、任意の処理をコールバックで実行できるようになりました。

例えば以下のようにFormRequestクラスへメソッドを追加すると、リクエストの内容を変更できます。

public function passedValidation()
{
    $this->replace(['name' => 'Adam']);
}

メールアドレスの検証方法が追加されました (#29289)

egulias/email-validatorパッケージを元にして以下の検証タイプが追加されました。

  • rfc
  • strict
  • dns
  • spoof
  • filter

emailバリデーションの引数として、これらの検証タイプを指定可能になりました。

$request->validate([
    'email' => 'email:rfc,dns'
]);

Redis 5のサポートが追加されました (#29606)

データベースクエリビルダーにinsertOrIgnore()メソッドが追加されました (#29639, 46d7e96, #29645)

以下のデータベースにおいてinsert ignoreが可能になりました。

  • MySQL - uses: insert ignore
  • Postgres - uses: on conflict do nothing
  • SQLite - uses: insert or ignore

Whoopsハンドラーのオーバーライドが可能になりました (#29564)


詳しい変更については以下を確認してください。

Release v5.8.33 · laravel/framework · GitHub

© Xzxzyzyz