Apitome 侧边栏在包含在布局中时消失
Apitome sidebar disappears when included in a layout
我在 rails 应用程序的 5.2 ruby 版本中使用 rspec_api_documentation
和 apitome
gem。
这会产生出色的文档,并且有一个边栏 (div#sidebar) 可以快速访问文档的正确部分。当我选择
config.layout = "layouts/application.html.erb"
apitome.rb
初始化程序中的 选项,文档已呈现,但边栏已消失。查看页面源代码,侧边栏的代码没有被渲染,也就是说,这不是 css 问题,html 没有被放入布局中。为了确保它在我的 application.html.erb 文件中没有异常,我将其简化为
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<%= yield %>
</body>
</html>
这个侧边栏非常有用,那么如何在布局中呈现它呢?
根据对 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 修补,一切看起来都不错。
我在 rails 应用程序的 5.2 ruby 版本中使用 rspec_api_documentation
和 apitome
gem。
这会产生出色的文档,并且有一个边栏 (div#sidebar) 可以快速访问文档的正确部分。当我选择
config.layout = "layouts/application.html.erb"
apitome.rb
初始化程序中的 选项,文档已呈现,但边栏已消失。查看页面源代码,侧边栏的代码没有被渲染,也就是说,这不是 css 问题,html 没有被放入布局中。为了确保它在我的 application.html.erb 文件中没有异常,我将其简化为
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<%= yield %>
</body>
</html>
这个侧边栏非常有用,那么如何在布局中呈现它呢?
根据对 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 修补,一切看起来都不错。