Laravel の blade で結構はまったけど、とてもくだらない原因だった話

Laravelのbladeでは、asset関数によってpublicのパスを返すことでできます。

これを利用すると、以下のようにすることでイメージファイルのパスを埋め込むことができます。

<img src="{{ asset('/img/logo.png') }}">

しかし、この度これを使ったところ、ブラウザ上でHTMLをみても、上記のように asset('/img/logo.png’)がそのまま出力されてしまう問題にぶちあたりました。

  • Laravelのキャッシュを消してもNG
  • 以前は正常に動作していた
  • スペースとかいろいろ変えて書いてもNG
  • 対象のファイルもディレクトリもあることを確認
  • assetを使っているところ以外は大丈夫そう(他は静的でした)
  • 最近変えたのは、、、bladeのファイル名 <<<これ

そう、bladeのファイル名を変えたのです。

以前は、hoge.blade.phpだったのですが、何をおもったのか foo.php に変えました。

blade が抜けてます!!foo.blade.php としないといけない。

それは、asset関数は動かないです。

ファイル名を変更する時は十分注意するようにします。