ruby – 使用MIddleman 3.0 – 如何在动态页面上设置单个页面标题?

我正在中间人组建一个简单的投资组合网站.我根据本地YAML数据动态生成“工作”页面.这是在config.rb中:
data.work.projects.each do |project|
  page "/work/#{project[0]}.html",:proxy => "project_template.html" do
    @project = project
  end
end

对于SEO目的,我希望这些动态生成页面中的每一个具有唯一的页面标题和描述.

标题当前在这样的布局文件中设置

%title
    = current_page.data.title

我知道我可以使用frontmatter来设置这样的current_page变量

---
title: "Recent Work - "
---

我可以把它放在我的project_template.haml中,但是有没有办法得到这样的东西呢?

---
title: "Recent Work - " + @project.title
---

解决方法

您可以使用content_for,而不是在前端设置标题(就像您在做).

例如.在布局中:

%title = yield_content(:title)

并在动态页面的模板中:

– content_for(:title,@ project.title)

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...