0

对此可能有一个非常简单的答案,但是,由于我是 Rails 新手,我很难确定合适的语法。

基本上,我想在末尾显示一个带有链接的字符串,其中“Jimmy”在这里代表单个记录和指向该记录的链接:

"This video was posted by Jimmy"

我想创建一个局部变量来存储字符串,所以我最初的想法是创建如下变量:

my_string = "This video was posted by " + (link_to user.name, user)

但是,这似乎不起作用。相反,它只是在浏览器中显示生成的 HTML,即:

This video was posted by <a href="/users/6">Jimmy</a>

这不是我想要的 - 我显然希望它显示:

This video was posted by Jimmy

其中吉米是链接。

有任何想法吗?我尝试将 .html_safe 添加到字符串的末尾,但这不起作用。

谢谢!

4

3 回答 3

3

一个更简单的方法是:

<td>Video created by <%= link_to user.name, user %></td>

无需使用字符串连接或使用<%= "Video created by" %>,无需通过 Ruby 解析器运行,只需使用纯文本版本 :)

于 2012-08-20T10:06:42.867 回答
0

看看原始的

<%= raw my_string %>

不过,假设这是您的观点,我不知道您为什么要将其存储到某个my_string变量中。

<span>This video was posted by <%= link_to user.name, user %></span>
于 2012-08-20T00:03:45.630 回答
0

谢谢你的帮助!我设法在不需要声明变量的情况下解决了这个问题(我试图太聪明了)。

如果有人感兴趣,最终(省略)代码如下(在表格单元格中):

<td><%= "Video created by " %><%= link_to user.name, user %></td>

与往常一样,一旦您知道如何应用,代码就会更容易应用:-)

再次感谢!

于 2012-08-20T10:03:50.170 回答