代码之家  ›  专栏  ›  技术社区  ›  Shofi

Ruby on Rails应用程序的动态页面中未加载图像

  •  0
  • Shofi  · 技术社区  · 7 年前

    ,其中不加载图像。在其他任何地方都可以正常工作。

    在控制台中,我收到以下错误:

    ActionController::RoutingError(没有与[GET]匹配的路由) “/posts/assets/logo.png”)

    src="assets/m1.jpg 在图像标签中,但在控制台错误中,链接不同!

    我错过了什么?

    3 回复  |  直到 7 年前
        1
  •  0
  •   Mate Solymosi    7 年前

    如果图像标记指定了以下精确的图像路径:

    <img src="assets/m1.jpg" etc="etc">
    

    …然后浏览器会将其视为 相对URL 试着查一下 相对的 指向当前页面的URL,即 http://localhost:3000/posts/2

    因此,浏览器将查找具有以下URL的图像: http://localhost:3000/posts/assets/m1.jpg

    image_tag

    <%= image_tag "m1.jpg" %>
    
        2
  •  0
  •   Simple Lime    7 年前

    不以开头的链接 / localhost:3000/posts/2 你在 posts localhost:3000/posts/assets/m1.jpg .

    如果你开始与一个 / 它将从当前网站的顶部查看 localhost:3000 /assets/m1.jpg 将寻找 localhost:3000/assets/m1.jpg 这就是你想要它看到的地方。

    在代码中,可以使用 image_tag

    image_tag('m1.jpg') # <img alt="M1" src="/assets/m1.jpg" />
    
        3
  •  0
  •   kevcha    7 年前

    你应该使用助手 <%= image_tag('m1.jpg') %> 把你的照片放在 assets/images/