【问题标题】:How to properly mount github's gollum wiki inside a Rails App?如何在 Rails 应用程序中正确安装 github 的 gollum wiki?
【发布时间】:2012-10-14 18:11:38
【问题描述】:

我正在尝试通过将其作为机架应用程序安装在我的 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

wiki 应该在 '/wiki' 运行,但每次访问此网址时,它都会将我重定向到 /wiki/create/Home,并在创建页面后将我重定向到 /wiki/wiki/page_name
我错过了一些选择吗?这甚至可能吗?

【问题讨论】:

    标签: ruby-on-rails routes rack gollum-wiki


    【解决方案1】:

    我将与您分享我刚才为使其正常工作所做的工作。实际上,我从上面的代码开始并对其进行了调整,直到我对其进行了排序。如果您仍然在破解它,也许它会为您工作。

    在 Gemfile 中:

    gem 'gollum'
    

    在 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
    

    然后,这是最重要的部分,创建并初始化 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/
    

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

    祝你好运。

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

    【讨论】:

    • 对多个 wiki 的工作方式有何建议?例如wiki/1, wiki/2
    • 我建议在config/initializers/gollum.rb 中添加Precious::Apprequire 行。
    • 这似乎不再起作用了。因错误 bin/rails:6: warning: already initialized constant APP_PATH 而中断
    • @Anurag,不要复制Ams::Application.routes.draw,将所有Precious::App 放入您的YourApp::Application.routes.draw。无论如何,在当前版本中要求路径必须固定require 'gollum/app'
    • 我已经更新了上面的代码示例以更好地匹配。希望它能消除任何困惑。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-20
    • 2011-06-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-02
    • 1970-01-01
    相关资源
    最近更新 更多