我有一个带有属性的图像模型:description是一个文本,格式为html文本(例如文本中有几个),我在视图中显示如下:
simple_format(@image.description)
raw(@ image.description)将主要与我想的相同。如何添加link_to助手以及该文本的链接?我正在搜索类似下面的文字(将是@ image.description):
文字文字文字。
文本文本#{link_to“Text”,@ image.link)
@ image.link将成为链接。我怎么能这样做?
答案 0 :(得分:1)
使用ERB:
<%= raw ERB.new(@image.description).result(binding) %>
用辅助方法包裹它:
module ApplicationHelper
def simple_format(content)
ERB.new(content).result(binding).html_safe
end
end
并使用它:
<%= simple_format(@image.description) %>
您可以用于图像描述的一些示例内容可能是:
Check out <%= link_to "the first image", image_path(1) %>!
答案 1 :(得分:0)
你可以用这段代码
来做到这一点link_to raw(@image.description), @image.link
如果您只需要选择一个随机词:
words = @image.description.split
link_to raw(words.sample), @image.link
<强>更新强>
例如,当您创建说明时,您可以为单词添加特殊符号,您可以将其用作链接,例如它可以是括号:
@image.description = This my description with link (Hello) you can follow it!
@image.description.gsub(/\(([^\)]+)\)/, link_to('\1', @image.link))
它会产生:
"This my description with link <a href=\"/\">Hello</a> you can follow it!"