如何在Rails应用程序中正确安装github的gollum wiki?

mar*_*igo 9 rack routes ruby-on-rails gollum-wiki

我正在尝试通过将其作为机架应用程序安装到我的routes.rb文件中来为我的应用程序提供基于gollum的wiki:

require 'gollum/frontend/app'

#Gollun config

gollum_path = Rails.root
Precious::App.set(:gollum_path, gollum_path)
Precious::App.set(:wiki_options, {:universal_toc => false})

TestWiki::Application.routes.draw do
  mount Precious::App, :at => "wiki"
end
Run Code Online (Sandbox Code Playgroud)

维基应该在'/ wiki'运行,但每次去这个网址它会重定向到我/wiki/create/Home,并在创建一个页面后重定向我/wiki/wiki/page_name.
我错过了一些选择吗?这有可能吗?

vox*_*uro 10

我会和你分享我刚才做的工作.实际上我开始使用上面的代码并调整它直到我对其进行排序.如果你还在讨厌它,也许它会对你有用.

在Gemfile中:

gem 'gollum'
Run Code Online (Sandbox Code Playgroud)

在routes.rb中:

require 'gollum/app'

YourApplication::Application.routes.draw do
  Precious::App.set(:gollum_path, Rails.root.join('wiki').to_s)
  Precious::App.set(:default_markup, :markdown) # set your favorite markup language
  Precious::App.set(:wiki_options, {:universal_toc => false})
  mount Precious::App, at: 'wiki'
end
Run Code Online (Sandbox Code Playgroud)

然后,这是最重要的部分,创建并初始化wiki目录:

~/Sites/ams$ mkdir wiki
~/Sites/ams$ cd wiki
~/Sites/ams/wiki$ ls
~/Sites/ams/wiki$ git init .
Initialized empty Git repository in /Users/xxx/Sites/ams/wiki/.git/
Run Code Online (Sandbox Code Playgroud)

关闭服务器,bundle install重启服务器,然后点击/ wiki.

祝好运.

编辑2014-11-06:最新版本的gollum与原始编写时的目录结构略有不同.我更新了routes.rb示例以匹配最新的gollum和rails.

  • 我建议在`config/initializers/gollum.rb`中粘贴`Precious :: App`和`require`行. (4认同)
  • 这似乎不再起作用了.打破错误`bin/rails:6:警告:已初始化常量APP_PATH` (2认同)