25

在我的 Ruby on Rails 项目中,我使用 HAML,我需要翻译这样的内容

<div>foo <a>bar</a>.<div>

进入 HAML。它应该看起来像:

.divclass
  foo
  %a bar
  .     

开始时的时间段不起作用,因为它被 HAML 使用。那么如何使用句号作为内容呢?

即使围绕它不工作建立一个跨度,这个时期再次被视为特殊的东西。

我认为有一个逃生机制,但我找不到它。

4

4 回答 4

39

它与\

像这样

\.

请参阅HAML 参考中的转义 \

更新:如果您需要在句尾添加一个点(以防止不必要的空格),则使用 HAML succeed(如本答案所示)是一个更好的解决方案。

于 2012-09-20T12:56:50.420 回答
20

更好的方法:

%p
  This sentence ends with a link which is *just* before a period
  = succeed "." do
    %a{:href => "#"} link
  But the period wasn't included with the link and there was no space before the period.
于 2013-08-20T23:56:01.743 回答
2

您还可以访问 :plain 过滤器,如下所示:

%p 
  :plain
    .
于 2014-03-18T17:49:34.523 回答
2

我将使用 Rails 的内置link_to帮助程序添加另一个选项,而不是手动创建链接。然后你可以简单地做

%p
  This sentence ends with a link which is *just* before a period
  #{ link_to "link", "#" }.

不同的解决方案将在不同的地方工作,但我发现这很干净,特别是如果已经使用link_toormail_to等​​。

于 2016-07-19T16:14:14.683 回答