【问题标题】:Sinatra app won't publish to HerokuSinatra 应用程序不会发布到 Heroku
【发布时间】:2012-02-26 19:57:44
【问题描述】:

我有一个非常简单的 Sinatra 应用程序,我正试图将它发布到 Heroku。我已经创建了帐户,并且应用程序在本地运行良好,但是当我输入时:

git push heroku master (from within the applications root folder)

我明白了:

-----> Heroku receiving push
-----> Removing .DS_Store files
!     Heroku push rejected, no Rails or Rack app detected

To git@heroku.com:pure-mist-880.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:pure-mist-880.git' 

我的 config.ru 文件非常简单(可能是问题所在,因为我已经看到了几种不同的编写方法……):

require './raffle'

map '/' do
run Raffler
end

但它在本地运行良好。
我错过了什么?

【问题讨论】:

    标签: heroku sinatra


    【解决方案1】:

    简单就是好的。我有一个使用这个config.ru 文件在 Heroku 上工作的 Sinatra 应用程序:

    require './app'
    run App
    

    app.rb 包含类似这样的内容(它是一个模块化风格的应用程序):

    class App < Sinatra::Base
      get '/' do
        # ...
      end
    end
    

    【讨论】:

    • 感谢您的启发。我从头开始使用像您这样的应用程序,并意识到 Heroku 之所以抱怨,是因为它找不到“sinatra/base”。我环顾四周,发现 Heroku 想要一个 .gems 清单,列出您的应用程序所需的所有 gem。我为我的主应用程序编写了其中一个,一切都变得更好(减去我的 CSS ......没有加载)。再次感谢!
    • 您应该使用 Bundler (gembundler.com),而不仅仅是使用 .gems 文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-11
    • 2018-12-29
    相关资源
    最近更新 更多