【问题标题】:How to render indentation with erb in Rails partial如何在 Rails 部分中使用 erb 渲染缩进
【发布时间】:2017-11-11 13:19:13
【问题描述】:

所以我有一个获取参数并列出其属性的部分:

<% if entry %>
  {
  <%= render partial: 'user_data', locals: {entry: entry} %>            
  }
<% end %>

_user_data.html.erb:

<% if entry.name != nil %>
  name: <%= entry.name %>
  entry number: <%= entry.number %>  
  user: <%= entry.user %>
<% else %>
  name: nil
  entry number: nil
  user: nil
<% end %>

我得到的是:

  {
    name: nil
entry number: nil
user: nil
  }

我怎样才能正确缩进它们?为什么会这样?

【问题讨论】:

  • 一定要返回json还是html?
  • 看起来 OP 想要呈现 HTML,但看起来像 JSON。因为.html.erb而假设。
  • 这只是纯粹的视图格式偏好,与 JSON 无关。
  • 您只想在 HTML 中呈现格式化输出吗?还是返回 JSON?

标签: ruby-on-rails ruby erb partials renderpartial


【解决方案1】:

如果您只想格式化 HTML 输出,请尝试使用 &lt;pre&gt; 标签:

<% if entry %>
  <pre>
  {
    <% if entry.name != nil %>
      name: <%= entry.name %>
      entry number: <%= entry.number %>  
      user: <%= entry.user %>
    <% else %>
      name: nil
      entry number: nil
      user: nil
    <% end %>
  }
  </pre>
<% end %>

EXAMPLE FIDDLE

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-25
    • 1970-01-01
    • 2014-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多