液体 - 你能否拥有一把钥匙,里面还有另一把钥匙。

时间:2016-02-23 01:54:06

标签: ruby-on-rails ruby ruby-on-rails-4 liquid

假设你有一个{'name' => 'tobi', 'show-name' => 'This is {{name}}' }

的哈希值

,模板为"guess who this is? {{show-name}}"

我希望输出为guess who this is? This is tobi

但它是"guess who this is? {{show-name}}"

这只是一个简单的例子。但我需要链接,例如

{'guide' => 'racing', 'guide-link' => '<a href='/guides/{{guide}}'>{{guide}}</a>' }`

模板:{{guide-link}}

我希望输出:<a href='/guides/racing'>racing</a>

输出我得到<a href='/guides/{{guide}}'>{{guide}}</a>

这可以用Liquid完成吗?我想你可能会把它称为嵌套哈希的键或值。

注意:我在轨道上的红宝石上使用液体宝石,这很重要。

1 个答案:

答案 0 :(得分:0)

为什么不将值存储在字符串中并输出?

,而不是使用Hash

基本上,不是像

那样
foo = { 
        'guide' => 'racing', 
        'guide-link' => '<a href='/guides/{{guide}}'>{{guide}}</a>' 
      }

您可以像这样使用字符串变量。

guide = 'racing'
foo = "<a href='/guides/#{guide}'>#{guide}</a>"

#{guide}语法相当于

foo = "<a href='/guides/" + guide.to_s + "'>" + guide.to_s + "</a>"

然而,听起来您应该使用将为您的模型生成的链接助手之一,而不是构建您自己的链接。至少,利用link_to