1

我正在尝试学习 Middleman 来创建一个静态站点,希望类似于 RailsCasts 在这个非常聪明的基于树的导航片段http://railscasts.com/episodes/162-tree-based-navigation-revised中构建的 CMS 。该站点的内容一旦创建就永远不会改变,因此我认为最好将其作为静态站点而不是 Rails 应用程序,尽管我想在开发中利用 ruby​​。rails 应用程序使用祖先 gem 来创建与某些页面的父子关系。

rails g scaffold page name content:text ancestry:string:index

在 Railscast 中,随后可以动态创建父子页面,即使内容最终是静态的。我不确定中间人是否可以使用祖先 gem 完成类似的过程。虽然我阅读了文档,但我之前从未创建过 Middleman 应用程序。我已经启动了该应用程序,但现在它只是一堆空文件夹。有什么建议可以解决这个问题吗?在尝试新事物时,我通常需要很多指导,并且鉴于缺乏中间人教程,我希望您能提供尽可能多的细节。

更新

\

注意,祖先 gem 将每个条目的父子信息存储在数据库中的字符串中ancestry: "1/2"

更新

我看到的一个问题是,要在 Rails 中使用 Ancestry,我必须has_ancestry在作为 Active Record 子类的类中使用。由于中间人中没有 db,这似乎是不可能的,但我想知道数据是否包含在 yaml 文件中,有没有办法在不继承 Active Record 的类中以某种方式使用 has_ancestry

class Page < ActiveRecord::Base
  attr_accessible :parent_id, :content, :name

  has_ancestry
end
4

0 回答 0