Laravel 5.6, 5.7 Voyager 画像を元ファイル名を維持してアップロード

Laravel 5.6, 5.7 Voyager 画像を元ファイル名を維持してアップロード

今回もLaravel 5.6, 5.7 管理画面パッケージ「Voyager」の機能についてご紹介します。

 

Voyagerから画像をアップロードするとデフォルトでは20文字の乱数が与えられます。

/vendor/tcg/voyager/src/Http/Controllers/ContentTypes/Image.php

開発要件次第では、元ファイル名を維持したままファイルをアップロードしたい、、、という場合もあると思います。

そんな時もVoyagerならチョチョイのチョイです。

 

今回もproductsテーブルを例に紹介します。

①テーブルにimageカラムを追加します。この時Typeはtextやvarcharを選択してください。

②/admin/bread/products/edit(BREAD編集画面)にて、ImageのOption Detailsに以下を追記。Input TypeをImageに変更。

 

これだけで元ファイル名を維持したまま画像をアップロード可能です!

InputType:ImageのみでなくRichTextBoxなどにも使用出来ますので、必要になった時に使用してください。

 

※なお、同名のファイルが既に存在する場合、Image.png->Image1.pngのように保存されます。

 

こういう便利なの、ドキュメントに書いといてくれよ、、、

 

※2018年9月9日追記

日本語ファイル名を維持したままアップロードすると、エラーが発生することがわかりました。解消法はこちらを参照ください。

Laravelカテゴリの最新記事