【问题标题】:HTML.SLIM to HTML.ERB href referenceHTML.SLIM 到 HTML.ERB 链接参考
【发布时间】:2019-06-10 17:53:48
【问题描述】:

将内容从 html.slim 移动到 html.erb 时遇到 href

苗条

a[href="#{service_url(id: @data['service_id'])}"]

在 .erb 中尝试了一些选项 - 没有一个有效:

<a href="#{service_url(id: @data['service_id'])}" class=...

<ahref="#{service_url(id: @data['service_id'])}" class= ...

<a [href="#{service_url(id: @data['service_id'])}"] class= ...

<a[href="#{service_url(id: @data['service_id'])}"] class= ...

<a :href="#{service_url(id: @data['service_id'])}" class= ...

我尝试使用here 提供的方法转换代码,但没有得到任何输出。

【问题讨论】:

    标签: html ruby erb


    【解决方案1】:

    你试过了吗?

    <a href="<%= service_url(id: @data['service_id']) %>" class=...
    

    slim 为您提供的自动字符串替换(使用 #{var} 语法)在 ERB 中不可用,因此您需要使用显式 ERB 输出标签。

    【讨论】:

    • 感谢@DannyB,这有帮助。我正在努力解决另一个问题:type: t("element_names.#{@data['consultancy']}"))。我试过:&lt;%= type: t("element_names.&lt;%=@data['consultancy']%&gt;")%&gt;&lt;% t("element_names.@data['consultancy']")%&gt;,但看起来这不是正确的方法。
    • 我建议你阅读一些关于 slim 和一些关于 ERB 的内容,它将消除大部分猜测。我猜type 在评估 slim 时会生成 HTML &lt;type&gt; 标签?在 ERB 中,您显式编写 HTML,并在需要嵌入 Ruby 时使用 ERB 标签:&lt;type&gt;&lt;%= t(...) %&gt;&lt;/type&gt;。见this ERB tags SO question
    猜你喜欢
    • 2014-06-10
    • 1970-01-01
    • 2015-04-03
    • 1970-01-01
    • 2012-08-04
    • 1970-01-01
    • 2019-07-24
    • 1970-01-01
    • 2020-10-24
    相关资源
    最近更新 更多