gpt4 book ai didi

ruby-on-rails - 如何在 p 中创建强元素

转载 作者:行者123 更新时间:2023-12-04 22:52:06 25 4
gpt4 key购买 nike

在haml中,我如何呈现以下令人难以置信的基本HTML:

<p>Results found for <strong>search term</strong>

其中“搜索词”实际上是一个名为 @query 的 Ruby 变量?

我正在尝试以下操作,
%p results found for <strong>= @query</strong>

但这会导致 = @query字面上地。如果我尝试:
%p results found for <strong>
= @query
</strong>

然后查询词正确呈现,但在一个新行上。

另外,我想知道是否有更好的方式来渲染 <strong>在haml中,同时将所有内容保持在同一行上。

我知道 haml documentation ,但据我所知,没有使用简单内联 Ruby 变量的示例。

- - -更新 - - - -

以下代码有效,并展示了如何使用不在标签内的变量:
   %p   
= @trials_found_count
results found for
%strong= @query

但我发现它真的不可读 - 很难说它只是作为一行 HTML 呈现而不在上面添加注释。

有没有办法将所有这些代码放在一行中?或者这就是haml的工作原理?

最佳答案

HAML 是空格分隔的。嵌套标签位于下方的行中,从上方的标签进入上一级。要显示其输出的嵌入式 Ruby 用“=”打开。您不想显示的嵌入式 Ruby,例如循环的开始使用“-”,它们分别相当于 erb 中的 <%= %> 和 <% %> 。

你想要的看起来像这样:

%p 
results found for
%strong= @query

这将产生 html:
<p>results found for <strong>@query</strong></p>

应该注意的是,开始 Ruby 评估的 '=' 只能出现在行首或标签声明之后,并且每行只能出现一个标签声明。
您链接的引用资料的 Ruby 评估部分详细介绍了嵌入式 Ruby,而涵盖嵌入式 ruby​​ 和许多其他 Haml 基础知识的 haml 教程在这里:
http://haml-lang.com/tutorial.html

关于ruby-on-rails - 如何在 p 中创建强元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3175016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com