質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

0回答

394閲覧

app/assets/images/に保存した画像情報が取得できない

freeze

総合スコア21

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2018/04/13 23:25

実現したいこと

app/assets/images/に保存した画像情報を取得したい。

発生している問題

FastImageというgemをインストールして、ローカルの画像情報を取得しようと試みましたが、
値を取得することができません。

代替として、minimagickというgemを使用しようとしましたが、
こちらもローカルのファイルを開く指定の部分でエラーが発生してしまいました。

エラーメッセージ

下記は、minimagickのgemを使用した場合のものです。

ActionView::Template::Error (No such file or directory @ rb_sysopen - profile.png): 23: <p><%= element.content %></p> 24: <p><%= image_tag element.image.to_s %></p> 25: 26: <%= image = MiniMagick::Image.open("profile.png") %> 27: <%= image.details %> 28: <p><img class="image-normal" src="<%= asset_path "sample.jpg" %>" alt="サンプル画像" /></p> 29: </div> app/views/tweets/index.html.erb:26:in `block in _app_views_tweets_index_html_erb___1935870555727135443_69963536864840' app/views/tweets/index.html.erb:14:in `each' app/views/tweets/index.html.erb:14:in `_app_views_tweets_index_html_erb___1935870555727135443_69963536864840' Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/templates/rescues/_source.erb (5.9ms) Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (2.1ms) Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (1.1ms) Rendered /usr/local/rvm/gems/ruby-2.3.0/gems/actionpack-4.2.3/lib/action_dispatch/middleware/templates/rescues/template_error.html.erb within rescues/layout (27.0ms)

試したこと

既にweb上に公開されている画像を絶対パスで指定すると、どちらのgemも問題なく動作いたしました。

Ruby

1FastImage.size("profile.png") // サイズ取得不可 2FastImage.size("http://hogehoge.jpg") // サイズ取得可

また、asset_path "profile.png"と記述しても、問題なく画像は表示されました。

初歩的な内容ではございますが、数日悩まされているエラーですので、どなたかご教示いただけると助かります。。

補足情報

・cloud9
・Rails 4.2.3

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2018/04/14 03:24

画像へのパスが間違っているに他なりませんが、app/assetsなど、ディレクトリを得られる定数などはありませんか?そちらがないか確認して、パスを合わせてみてください。絶対パスじゃなきゃいけないという仕組みにはなっていないはずです。
freeze

2018/04/14 04:12

コメントありがとうございます。こちらの理解が追い付かず恐縮ですが、"ディレクトリを得られる定数"について、具体的にどの部分を確認するべきなのでしょうか?(このgemを使用するにあたって定数を書き換えた心当たりがありません)
m.ts10806

2018/04/14 04:47

定数というより、そういう関数が用意されてるようですね。
freeze

2018/04/14 06:05

こちら、publicディレクトリに置いた画像ファイルについても、記事内を参考に取得しようとしましたが上手くいきませんでした。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問