ruby-on-rails - 如何在 Slim 模板中渲染 HTML

标签 ruby-on-rails ruby slim-lang

我正在尝试呈现一个以图标开头的链接。我正在使用 Slim模板引擎以及 Bootstrap CSS .

通常你可以通过以下方式做到这一点:

<a href="#"><i class="icon-user"></i> My Profile</a>

根据Slim的文档,我们可以使用==在不转义 HTML 的情况下呈现。因此,将其转换为 Slim,我尝试了以下变体:

li== link_to "<i class='icon-user'></i> My Profile", current_user
li== link_to "#{'<i class="icon-user"></i>'.html_safe} My Profile", current_user
li= link_to "#{'<i class="icon-user"></i>'.html_safe} My Profile", current_user

呈现的所有变体 <a href="/users/1"><i class="icon-user"></i> My Profile</a>转义 i标签。

如何阻止 Slim 或 Rails 转义 html?

(Rails 3.2 和 Slim 1.2.1)

最佳答案

这已经被回答了,但是如果你确实有一些 html 并且你想在一个 slim 模板中呈现它,请使用 double equal。

== "<i>test</i>"

将与

相同
= "<i>test</i>".html_safe

关于ruby-on-rails - 如何在 Slim 模板中渲染 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10988163/

相关文章:

ruby-on-rails - 在与 Rails 的 has_and_belongs_to_many 关联中添加对象

ruby - 将 'gem list' 用于带有 RVM 的 git gems 时, 'bundle install' 未找到 gems

ruby-on-rails - 使用 capybara 运行并行 Selenium 测试

ruby-on-rails - 是否有 Rails 4 向后移植库?

ruby-on-rails - 无法在 API Controller 中自动加载常量

ruby - 为什么文件内容不会复制?

javascript - JavaScript 片段中的 Ruby 变量不适用于 Slim lang

ruby-on-rails - Ruby on Rails Slim 中的超棒字体

ruby - 如何将 ruby​​ 哈希作为命令行选项传递?

javascript - 看似简单的 rails 应用程序 js 插件