HAML如何制作这条线?

Posted

技术标签:

【中文标题】HAML如何制作这条线?【英文标题】:HAML how to craft this line? 【发布时间】:2018-04-23 16:31:21 【问题描述】:

我得到了这个代码

%p.date= "Submitted #time_ago_in_words(@post.created_at) ago | " |
= link_to "Edit Post", edit_post_path(@post)

我得到了意想不到的结果:

<p class="date">Submitted 10 minutes ago | </p>
<a href="/posts/9/edit">Edit Post</a>

我想在 p 标签里面得到一个标签:

<p class="date">Submitted 10 minutes ago | <a href="/posts/9/edit">Edit Post</a></p>

我也试过这个:

%p.date= "Submitted #time_ago_in_words(@post.created_at) ago | "
  = link_to "Edit Post", edit_post_path(@post)

还有这个:

%p.date= "Submitted #time_ago_in_words(@post.created_at) ago "
  = "| #link_to "Edit Post", edit_post_path(@post)"

在这两种情况下我都会遇到同样的错误

非法嵌套:内容不能与 %p 位于同一行并嵌套在其中。

haml 似乎不知道结尾 |是用红宝石字符串吗? 如何解决这个问题?

【问题讨论】:

【参考方案1】:

在下一行用缩进分隔它们以嵌套它们:

%p.date
  = "Submitted #time_ago_in_words(@post.created_at) ago | "
  = link_to "Edit Post", edit_post_path(@post)

【讨论】:

以上是关于HAML如何制作这条线?的主要内容,如果未能解决你的问题,请参考以下文章

如何制作从一个元素到另一个元素的波浪线[关闭]

R geom_hline 只显示实线

未定义路由 [threads.storev]。 Laravel 8 如何制作这条路线?

如何使用felix实现osgi

如何在 Flutter 中画出这条线? [关闭]

如何在 Rider 中更改这条线的颜色?