Ruby on Rails,图片无法加载

时间:2018-05-17 11:50:19

标签: ruby-on-rails ruby image

我正在尝试做一些基本的Rails。我正在尝试使用以下代码从| ID | BIKE | CAR | BUS | HTV | |----|------|-----|-----|-----| | KK | Y | N | N | Y | | ss | Y | N | N | Y | 文件夹加载图像:

app/assets/images

它生成以下地址(我使用的是localhost:3000): http://localhost:3000/images/image.jpg

我尝试了所有可以找到的Rails图像的不同迭代,包括使用带有<%= image_tag 'image.jpg'%> 的{​​{1}}标记等。所有这些都没有运气。

还尝试将production.rb(edit:和development.rb)更改为具有以下代码:

<img>

在localhost之后,链接出错

  

“没有路线匹配[GET]”/ images/image.jpg“”

3 个答案:

答案 0 :(得分:1)

Sprockets默认使用的公共路径是/ assets。 这可以改为其他东西:

config.assets.prefix = "/some_other_path"

from rails guides

因此,您的图片必须位于http://localhost:3000/assets/image.jpg

PS:就像一个建议,试着阅读指南,这肯定会帮助你将来。

答案 1 :(得分:0)

尝试删除

config.serve_static_assets = true
config.assets.compile = true

并添加

config.assets.debug = true
config.assets.quiet = true

development.rb

答案 2 :(得分:0)

我明白了:

解决我收到错误的单独问题(TypeError:Object不支持此属性或方法)

<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>

根据某人的建议,我将'应用'更改为'默认'。它解决了这个问题,但似乎这种变化后来导致了我的图像问题。为了修复图像问题,我将其更改回“应用程序”然后修复此原始TypeError我从application.js中删除了require_tree并且它工作正常。希望这不会破坏别的东西。