将变量插入数据属性

时间:2015-06-25 22:14:12

标签: ruby-on-rails ruby slim-lang

这就是我通常用数据创建链接的方式。

= link_to 'link name', link_path, data: { day: '1' }

但现在我需要用这样的rails变量替换“1”。

= link_to 'link name', link_path, data: { day: '#{customer.info}' }

但它不起作用,我不知道该怎么做。

2 个答案:

答案 0 :(得分:3)

您可以将变量插入到仅使用双引号"创建的字符串中:

= link_to 'link name', link_path, data: { day: "#{customer.info}" }

顺便说一句,以下似乎就够了:

= link_to 'link name', link_path, data: { day: customer.info }

答案 1 :(得分:2)

如果您已经在Ruby上下文中,只需使用变量。

= link_to 'link name', link_path, data: { day: customer.info }

您现有的代码正在做的是传递一个包含ruby代码的字符串。代码不会被评估,因为用单引号括起来。

要使用插值,必须使用双引号。

= link_to 'link name', link_path, data: { day: "#{customer.info}" }

但是,正如我在答案开头所提到的那样,您不需要在此处插值。