gpt4 book ai didi

html - Ruby on Rails : Show picture in html in html. erb 文件

转载 作者:搜寻专家 更新时间:2023-10-31 22:59:29 24 4
gpt4 key购买 nike

我的 Ruby on Rails 网站上需要一张可拖动的图片,一切正常,只是图片不显示。

这是图片及其属性的代码:

<img id="drag1" src="/images/img_logo.gif" draggable="true" ondragstart="drag(event)" width="336" height="69">

如果我这样写,图片会显示:

<%= image_tag("img_logo.gif") %>

我的问题:我需要在上面的代码中插入什么,才能显示我的图片 (img_logo.gif)?

图片本身位于:/app/assets/images/img_logo.gif

写入此代码的文件是一个 html.erb 文件。

我还没有安装任何像 paperclip 或 imagemagick 这样的 gem。

编辑:感谢 Meagar 和 Vic,这会起作用:

要么这样:

<%= image_tag('img_logo.gif', draggable: "true", id: "drag1") %>

或者这个:

<img id="drag1" src="<%= asset_path('img_logo.gif') %>" draggable="true" ondragstart="drag(event)" width="336" height="69">

最佳答案

如果<img id="drag1" src="/images/img_logo.gif"正在工作,那么图像在您的 Assets 管道中,它在 public/images 中.

如果图像在您的 Assets 管道中,位于app/assets/images/img_logo.gif , 那么它的正确 URL 将是 /assets/img_logo.gif .

您拥有的代码,image_tag("img_logo.gif") 是正确的,因为它将输出正确的 URL /assets/img_logo.gif ,假设图像在您所说的位置,并且您没有更改有关 Assets 管道的任何设置。您可以使用 /images/img_logo.gif 成功请求图像这一事实告诉我情况并非如此,您没有准确描述您的情况。


关于您的评论:

Thanks for your answer: It works, when I typed this in: <img id="drag1" src="/assets/img_logo.gif" draggable="true" ondragstart="drag(event)" width="336" height="69">

不要那样做

我认为您向后传达了正在发生的事情。我明白 <img src="/images/img_logo.gif"正在工作,那image_tag失败了。我现在看到 image_tag一直在工作,但您试图弄清楚如何向 id="drag1" draggable=true 提供额外的属性(<img> 等)正在输出标签。

您不能像这样硬编码 Assets 路径。它将在开发中工作,但 Assets URL 在生产中不同,您的网站将停止工作。

要实现您的目标,您可以将属性传递给您的 image_tag助手,或者你可以使用 asset_path在您的 HTML 标记中:

要么这个...

<%= image_tag('img_logo.gif', draggable: "true", id: "drag1") %>

或者这个...

<img id="drag1" src="<%= asset_path('img_logo.gif') %>" draggable="true" ondragstart="drag(event)" width="336" height="69">

但是不要使用这个:

<img id="drag1" src="/assets/img_logo.gif" draggable="true" ondragstart="drag(event)" width="336" height="69">

关于html - Ruby on Rails : Show picture in html in html. erb 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34420549/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com