2012-01-17 44 views
7

我的目标是在本地和我的登台服务器上使用Pry作为我的Rails应用程序的控制台。但我无法在Heroku上运行。为什么Pry不能在Heroku的控制台中运行?

我在使用these指令让Heroku使用Pry作为我的Rails应用程序的控制台。当我运行heroku run console pry时,我的控制台打印Running console pry attached to terminal... up, run.1,然后退出。当我运行heroku console pry时,它只是说main然后退出。

关于我在做什么的错误?

这是我到目前为止已经完成:

  1. 在我的Gemfile我已经添加了几行:
    gem 'pry'
    gem 'pry-rails'

  2. 我已经创建了一个文件称为pry其中包含:
    #!/usr/bin/env ruby
    require 'pry'
    pry

  3. 我添加了下面的所有文件中配置/环境
    silence_warnings do
    begin
    require 'pry'
    IRB = Pry
    rescue LoadError
    end
    end

  4. 运行bundle install

  5. 运行git push staging master
+1

我认为把它放在项目的根目录下(和'Gemfile'等一样的目录)是正确的。正如@JohnBachir提到的,确保你的Gemfile中也有'gem'pry'',并且你已经运行'bundle install',然后在推送之前将'pry','Gemfile'和'Gemfile.lock'添加到你的仓库它Heroku。 – 2012-01-17 21:00:23

+0

@Jordan,我已经做到了;只是更新的问题,以反映它。 – thewillcole 2012-01-17 21:17:13

回答

12

我是为Heroku和Pry开发方法的人,但是你提出了一个我没有想到的有趣案例,因为我主要是使用Sinatra和EM部署并构建自己的助手等等。无论哪种方式:

要同时具有一个Rails应用程序,你只需要添加撬滑轨,窥探到你的Gemfile(作为普通宝石)与Heroku的使用撬,然后bundle install,然后git [commit|push]和雪松栈运行heroku run console。步骤3你做了什么调整配置/环境没有,也不应该这样做,如果可以,请恢复该更改。当你这样做,并从你的应用程序的根目录中删除pry脚本(以及你不一定需要做后者),Pry会正确加载你的Rails。

+0

嗯。我在'竹子 - 1.9.2'不''切'。它只能在'ceder'上工作吗? – thewillcole 2012-01-20 23:38:39

+0

@theWillCole您应该可以在Bamboo上使用它,只需将控制台启动调整为您的堆栈所需的启动,我相信Bamboo对于Bamboo堆栈来说只是“heroku console”。 – 2012-02-02 07:20:35

+0

我升级到“瘦”服务器和heroku的“雪松”堆栈。沿线pry开始工作。我不完全确定问题是什么,但现在这个答案适用于我。 – thewillcole 2012-02-29 09:24:22

0

你可能要列出它在你捆绑的Gemfile。

+0

已经这样做了,但忘了在问题中提到它。任何其他想法? – thewillcole 2012-01-17 21:18:29

3

我刚刚使用https://github.com/pry/pry/wiki/Setting-up-Rails-or-Heroku-to-use-Pry上的说明进行设置,pry文件进入项目的根目录。提交并推送到Heroku - 我正在使用Cedar堆栈。

影响的控制台会话heroku run console pry - 我发现我没有那么需要执行pry被投进撬提示,但随后担任我所期待。

更新:为了清楚起见,我将pry添加到Gemfile中,并按照指示创建了pry文件。是你的问题,你在你的gemfile中锁定撬开发/测试 - 你在这些环境中的Heroku上运行你的应用程序?因此,为什么你得到未定义的方法?

+0

我从我的Gemfile中删除了:groups => [:development,:test]。我不再收到未定义的方法错误,但控制台在我启动后仍会立即退出。 – thewillcole 2012-01-18 01:41:29

+0

对于这个问题的未来访问者,现在说明立即在2017年,只需运行'heroku运行控制台'。 – Evolve 2017-05-28 11:40:32

相关问题