【问题标题】:How to Display Refinery Admin Pages sitemap on front end Rails如何在前端 Rails 上显示炼油厂管理页面站点地图
【发布时间】:2014-06-12 00:16:53
【问题描述】:

我想在前端向我的用户显示炼油厂管理页面层次结构作为站点地图, 我是 RefineryCMS 的新手,你能指出正确的方向吗?我已附上图片,该图片位于 refinery/Admin 部分我也想将其添加到我的网站上供访问者使用,你可以想象我有一个控制器 site_maps 和操作index 我想在 app/views/site_maps/index.html.erb 页面下显示该站点地图。希望它有意义。谢谢。

【问题讨论】:

    标签: ruby-on-rails ruby refinerycms


    【解决方案1】:

    我通过执行以下步骤来实现这一点。

    1:在控制器中(我的是 site_maps.rb)

    class SiteMapsController < ApplicationController
    
    def index
    @pages = Refinery::Page.where(parent_id:nil)
    end
    end
    

    第二个:在 index.html.erb 视图中

    <div class = "row">
    <%@pages.live.each do |page|%>
       <% if page.show_in_menu%>
       <ul>
       <li>
          <%= link_to (page_title_with_translations page),     refinery.url_for((page.url_marketable)) %>
          <%if page.children.any?%>
               <%= render :partial => 'shared/page', locals: {:page_children => page} %>
          <%-end %>
       </li>
      </ul>
      <%end%>
    <%end%>
    
    </div>
    

    第三个:在_page.html.erb中

    <% page_children.children.live.each do |children_page|%>
      <ul>
      <li>
        <%= link_to (page_title_with_translations children_page), refinery.url_for((children_page.url_marketable)) %>
        <%if children_page.children.any?%>
            <%= render :partial => 'shared/page', locals: {:page_children => children_page} %>
        <%-end %>
      </li>
    </ul>
    <%end%>
    

    注意:如果没有这个炼油厂功能refinery.url_for,您的链接可能会被检测为蜘蛛的搜索并且会出错!

    【讨论】:

      【解决方案2】:

      你的意思是主页吗? 那么:

      mount Refinery::Core::Engine, :at => '/'
      

      【讨论】:

      • @shivamD,不,我想显示我在图像中显示的相同站点地图,该图像位于炼油厂/管理部分下,我也想将它添加到我的网站上供访问者使用,你可以想象我有site_maps#index 页面。希望它有意义。谢谢。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-08
      • 2013-09-21
      • 2012-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多