当包含在布局中时,Apitome侧边栏消失

时间:2018-10-29 22:45:29

标签: ruby-on-rails rspec-api-documentation apitome

我在Rails应用程序的5.2版ruby中使用rspec_api_documentationapitome宝石。

这产生了出色的文档,并且具有侧边栏(div#sidebar),可以快速访问文档的正确部分。当我选择

config.layout = "layouts/application.html.erb"
apitome.rb初始化程序中的

选项,将呈现文档,但侧边栏已消失。查看页面源代码,没有显示侧边栏的代码,即这不是CSS问题,没有将html放入布局中。为了确保在我的application.html.erb文件中没有异常,我将其简化为

<!DOCTYPE html>
<html>
  <head>
  </head>

  <body>
        <%= yield %>
  </body>
</html>

此侧边栏非常有用,那么如何在布局中渲染呢?

1 个答案:

答案 0 :(得分:0)

基于对this issue的答复,我能够解决此问题。

我在app/views/layouts.apidocs.html.erb创建了一个新布局,该布局呈现了apitome/docs/navigation。一个简单的例子如下

# app/views/layouts/apidocs.html.erb

<!DOCTYPE html>
<html>
  <head>
  </head>

  <body>
    <div class="container">
      <div class="row">
        <div class="col-md-4">
          <div id="sidebar" class="sidebar hidden-print" role="complementary">
            <%= render 'apitome/docs/navigation' %>
          </div>
        </div>
        <div class="col-md-8" role="main">
          <div class="docs-section">
            <%= yield %>
          </div>
        </div>
      </div>
    </div>
  </body>
</html>

然后,我在 Apitome初始化程序。

# config/initializers/apitome
Apitome.setup do |config|
   ...
   config.layout = "layouts/apidocs.html.erb"
end

经过一些CSS修改后,一切看起来都很好。