可以在Middleman中截断YAML文件中的字符串吗?

时间:2018-01-25 22:51:54

标签: ruby yaml middleman

我正在生成YAML文件,我正在迭代以在页面上创建卡片。

YAML文件中的一个字段是具有高度可变长度的文本字段。

为了在视图中显示可预测数量的文本(我正在创建具有相同高度的卡片),我想将字符串截断为x个字符。

在博客中工作时,可以访问.summary method,但尝试在我的Middleman网站的博客部分之外使用它时,我得到一个no方法错误。

还有另一种简单的方法来实现这一目标吗?也尝试过使用truncate方法,但这似乎不起作用。

这是循环,以防它有用。

        <% data.jobs.each do |j| %>
        <div class="col job-card">
            <div class="job-card-heading">
                <img src="/assets/images/latest-jobs/<%= j.image %>" alt="Company Logo">
                <div class="job-heading-text">
                    <h3><%= j.company %></h3>
                    <span><%= j.location %></span>
                </div>
            </div>
            <div class="job-card-body">
                <h3><%= j.name %></h3>
                <p><%= j.description.summary(125) %></p>
            </div>
            <div class="job-card-body">
                <span class="job-type"><%= j.jobtype %></span>
                <span class="clinician-type"><%= j.cliniciantype %></span>
            </div>
        </div>
        <% end %>

2 个答案:

答案 0 :(得分:1)

截断应该适用于此:

<%= truncate(j.description, :length => 125) %>

答案 1 :(得分:0)

如果您的description变量是字符串,请尝试使用:

<%= j.description.first(125) %>