1
/
5

【Laravel】非推奨パッケージ”laravelCollective/html”を削除する【株式会社ライトコード】

はじめに

最近、Laravelのサービスのバージョンアップを行いました。
弊社では以前にも同様の対応を行っていたため、今回はスムーズに進めることができました。特に、laravelCollective/htmlパッケージの削除に関しては、過去のナレッジが役立ちました。

過去の記事でも削除手順について簡単に紹介していますが、この記事ではより具体的な手順を詳細に解説していきます。

これからlaravelCollective/htmlパッケージをプロジェクトから削除しようとしている方々にとって、少しでもお役に立てれば幸いです。

laravelCollective/htmlとは

まず、laravelCollective/htmlパッケージについて簡単に説明します。

このパッケージは、かつてLaravelフレームワークに標準で組み込まれていたHTMLフォーム生成やヘルパー機能を提供します。Laravel 4.xまではこれらの機能がデフォルトで利用可能でしたが、Laravel 5.0以降、フレームワークから除外され、laravelCollectiveによってメンテナンスされるようになりました。

このパッケージを使用すると、フォームの生成や入力フィールドの自動生成、リンクタグの生成などが容易になります。特に、フォームリクエストバインディングやCSRFトークンの自動挿入といったセキュリティ関連の機能を備えています。

しかし、Laravelの進化に伴って、laravelCollective/htmlの機能は他の手法やパッケージで代替可能となり、公式にも推奨されなくなっています。そして、Laravel11にて完全に使用できなくなるみたいです。

Laravel Collective HTML package is abandoned - Laravel News

次に、このパッケージをプロジェクトから削除する手順について、具体的に説明していきます。

削除手順

If you're looking to replace this package due to it's retirement we recommend using Shift

公式ページ によると、laravelCollective/htmlパッケージが非推奨になったため、Shiftを使って、spatie/laravel-htmlパッケージに移行することが推奨されています。

しかし、HTMLの生成にわざわざ別のパッケージを使用せずとも、生の HTML に変換することや、Bladeテンプレート等を活用することで同様の機能をシンプルに実現できます。

この記事では、以下の4パターンを元に置き換え手順を具体的に紹介します。

  • Form::open と Form::close
  • Form::text
  • カスタムマクロの対応
  • link_to

Form::open と Form::close

Form::open と Form::close の元のコード例は以下の通りです。

{!! Form::open(['url' => 'foo/bar', 'method' => 'post']) !!}

{!! Form::close() !!}

Form::open は、正規表現を使用して標準的な form タグに変換することができます。

こういった場合、ChatGPTなどのAIツールを活用して正規表現を生成すると、より効率的に作業を進めることができるので活用していくと良いと思います。

以下に正規表現とその置換パターンを示します。

正規表現

\{!!\s*Form::open\(\s*\[\s*'url'\s*=>\s*'[^']+'\s*,\s*'method'\s*=>\s*'[^']+'\s*]\s*

\)\s*!!\}

置換パターン

<form action="$1" method="$2">@csrf

この正規表現を用いてVSCode等で置換することで、以下のように変換されます。

<form action="foo/bar" method="post">

Form::open メソッドは内部で CSRF トークンを自動挿入しているため、通常の form タグに変換する際には @csrf を追加する必要があります。

Form::close に関しては、単純に </form> に変換するだけで対応できますので、手順の詳細は割愛します。

記事の続きは下のURLをクリック!

https://rightcode.co.jp/blogs/48808



エンジニア積極採用中です!

現在、WEBエンジニア、モバイルエンジニア、デザイナー、営業などを積極採用中です!

採用ページはこちら:https://rightcode.co.jp/recruit

社員の声や社風などを知りたい方はこちら:https://rightcode.co.jp/blogs?category=life

社長と一杯飲みながらお話しませんか?(転職者向け)

特設ページはこちら: https://rightcode.co.jp/gohan-sake-president-talk

もっとワクワクしたいあなたへ

現在、ライトコードでは「WEBエンジニア」「モバイルエンジニア」「ゲームエンジニア」、「デザイナー」「WEBディレクター」「営業」などを積極採用中です!

ライトコードは技術力に定評のある受託開発をメインにしているIT企業です。

有名WEBサービスやアプリの受託開発などの企画、開発案件が目白押しの状況です。

  • もっと大きなことに挑戦したい!
  • エンジニアとしてもっと成長したい!
  • モダンな技術に触れたい!

現状に満足していない方は、まずは、エンジニアとしても第一線を走り続ける弊社代表と気軽にお話してみませんか?

ネット上では、ちょっとユルそうな会社に感じると思いますが(笑)、
実は技術力に定評があり、沢山の実績を残している会社ということをお伝えしたいと思っております。

  • ライトコードの魅力を知っていただきたい!
  • 社風や文化なども知っていただきたい!
  • 技術に対して熱意のある方に入社していただきたい!

一度、【Wantedly内の弊社ページ】や【コーポレートサイト】をのぞいてみてください。

Invitation from 株式会社ライトコード
If this story triggered your interest, have a chat with the team?
株式会社ライトコード's job postings

Weekly ranking

Show other rankings
Like Hiroyuki Choshi's Story
Let Hiroyuki Choshi's company know you're interested in their content