在我的haml文件中,我想在一个来自yml文件的字符串中包含一个链接

时间:2016-05-06 23:27:00

标签: hyperlink yaml haml

这是我的情况:

我的haml文件中有这个,...它是一个开始:

.image-credits
    %div
        %h2
            = t(:image_credits)
        %ul
            %li
                %p
                    = t(:photographer_1)

然后在我的yml文件中我定义了这些字符串:

  image_credits : "Image Credits"
  photographer_1 : "\"Miss Kitty\" by Mike Henderson"
  photographer_1_link : "https://www.flickr.com/photos/mikehenderson/3750940230"

理想情况下,我希望它是这样呈现的:

" Miss Kitty"作者:Mike Henderson

有关如何做到这一点的任何建议?我一直在谷歌上搜索,但我不认为我正在寻找合适的东西。

1 个答案:

答案 0 :(得分:3)

你需要做两件事:

  1. 您的photographer_1字符串需要呈现为HTML,您可以通过将_html附加到密钥来向Rails发出信号(因此现在photographer_1_html http://guides.rubyonrails.org/i18n.html#using-safe-html-translations })
  2. 您需要将参数传递给此键,该键将是您要插入的链接。由于所有区域设置中的链接都相同,因此链接可以位于HAML中。参数作为t()方法中的选项传递。
  3. 所以你最终得到: # in en.yml photographer_1_html : "<a href='%{link}'>\"Miss Kitty\" by Mike Henderson</a>"

    # in yourview.html.haml = t(:photographer_1_html, link:"https://www.flickr.com/photos/mikehenderson/3750940230")