0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Railsで画像を貼り付ける方法

Posted at

画像の挿入といえば、HTMLの場合

<img src="ファイルパス">

Railsの場合

<%= image_tag "ファイルパス", オプション %>

というのが準備されていますが、何が違うのか?
ということで、調査しました。結果、下記サイトにたどり着きました。

まとめると、
image_tagだと、アセットパイプラインの仕組みで変更された画像のファイル名に変換してimgタグを生成してくれるが、
imgタグだと、変換前(保存されてるファイル名)のファイル名で呼び出そうとしてしまうので、該当するファイルがないということで、何も表示されないといったことが起こります。

詳しく説明すると、app/assets/配下のJavaScript、CSS、そして画像はアセットパイプラインという仕組みでコンパイルされていて、画像の場合は以下のようなファイル名に変更されています。

main.png
 ↓アセットパイプラインの仕組みで変更されたファイル名
main-35f2b73749c6caa946cd67b9eb73bc199f56f9c03aaee1d25360af09eccf5942.png

image_tagを使うと、自動的に変更後のファイル名を呼び出してくれるので、特にこだわりがなければimage_tagでOKかな。
「アセットパイプライン」についてはまた後日。。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?