Ruby on rails 4资产图像无法加载

时间:2014-06-01 12:07:21

标签: ruby-on-rails ruby

目前,我在轨道4上使用ruby。

在html部分,我正在尝试加载图片:

<img width="121" height="31" src="/assets/images/flatty/logo_lg.svg" />  

图片文件:logo_lg.svg位于以下位置:app / assets / images / flatty /

我试过了:

<%= image_tag "/assets/images/flatty/logo_lg.png" %>

在production.rb文件中:config.serve_static_assets = true

此外,尝试过:rails assets:precompile

但系统仍无法找到图像文件。

1 个答案:

答案 0 :(得分:4)

您有一个.svg但是您正在尝试加载.png。将您的代码更改为:

<%= image_tag "flatty/logo_lg.svg" %>

加载图片时,请勿使用完整目录。资产管道为您做到了这一点。只需将它们放在正确的位置,即images目录,然后记下:

<%= image_tag "someimg.png" %>

此外,如果您想为图像添加样式,可以为其指定一个类或一个id(id会更适合徽标):

<%= image_tag "flatty/logo_lg.svg" , :id => 'someId' , :class => 'someClass' %>

然后将CSS放入您的应用程序css文件或您页面控制器生成的文件中:

  .someClass {

  width: 50px;
  height: 50px;

 }


 #someId {

  width: 50px;
  height: 50px;

 }

如果你想放置一个SVG,它们会有不同的反应。您必须删除SVG代码中给出的属性(您可以使用大多数文本编辑器打开.svg文件)。它的XML标记。

请阅读 answer 了解详情。