【问题标题】:How to render nested child pages in Comfortable Mexican Sofa如何在舒适的墨西哥沙发中呈现嵌套的子页面
【发布时间】:2015-01-19 15:49:32
【问题描述】:

这就是我想要完成的,但我不确定从哪里开始:

我有以下页面结构:

在主页上,我想将 Publications 的每个子项显示为一个部分。这两个部分将是警报和本周新故事。然后,一个部分的最新发布的子项将在该部分中呈现。所以在主页上我会有以下部分和文章: 警报 -> 东部的麻烦-1-20-2015 本周新闻故事 -> 国会对农业法案进行大修

我已经阅读了 CMS wiki,但我不知道如何处理这个问题。我是否使用标签和集合?

【问题讨论】:

    标签: ruby-on-rails comfortable-mexican-sofa


    【解决方案1】:

    您需要创建一个部分才能使其正常工作。

    在这里创建一个/app/views/comfy/cms/content/_section_list.html.erb

    然后在主页的布局中将{{cms:partial:section_list}} 添加到要显示部分的 html 中。

    然后在_section_list.html.erb 中执行以下操作:

    <% @cms_page.children.each do |section| %>
      <h1><%= section.blocks.where(identifier: 'header').first.content %></h1>
      <%= section.children.first.blocks.where(identifier: 'content').first.content %>
    <% end %>
    

    注意:确保块标识符正确,我假设您在上面的 sn-p 中有 headercontent

    【讨论】:

      【解决方案2】:

      Publication 使用的 cms 布局中定义部分标记 {{ cms:partial:foo/bar/articles }}

      在该部分中,您将可以访问@cms_page。现在你可以渲染出来了。

      @cms_page.children 会给你AlertsNews Story of the Week 页面。然后您可以获取这些页面的第一个子页面。

      它在后面使用acts_as_tree,所以非常简单。

      【讨论】:

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