我是很新,在这里Rails和我已经按照Ruby on Rails的教程的大部分。 因为我已经决定把我自己的应用程序,但使用beta版钢轨4宝石。 我有我的本地机器(Windows 7)中,做发展上安装PostgreSQL的。 一切的伟大工程! (我爱的Rails远远超过C#,ASP,.NET的工作,我为生活做!)
但是,一旦我决定推到Heroku的,我一直在拉我的头发。 在此之前力推的Heroku,我做了标准:
c:\Sites\elms>git add .
c:\Sites\elms>git commit -m "My comment"
c:\Sites\elms>git push
c:\Sites\elms>git push heroku master
我已经下载并安装了Heroku的列工具(不heroku
宝石。)第一个错误告诉我,我需要确保我Gemfile
指定红宝石> = 1.9.3,所以我说“红宝石1.9.3”来顶我的Gemfile
:
source 'https://rubygems.org'
ruby "1.9.3"
gem 'rails', '4.0.0.beta1'
gem 'pg'
gem 'haml-rails'
gem 'httparty'
gem 'devise', git: 'git://github.com/plataformatec/devise.git', branch: 'rails4'
gem 'cancan'
gem 'bootstrap-sass'
gem 'formtastic'
gem 'formtastic-plus-bootstrap'
group :development do
gem 'annotate'
gem 'better_errors'
gem 'binding_of_caller'
gem 'guard-spork'
gem 'guard-rspec'
gem 'meta_request'
gem 'rb-notifu'
gem 'schema_to_scaffold'
gem 'wdm', :platforms => [:mswin, :mingw], :require => false
gem 'win32console'
end
group :development, :test do
gem 'rspec-rails'
gem 'pry'
gem 'spork-rails', git: 'git://github.com/sahilm/spork-rails.git', branch: 'rails-4'
gem 'spork', '~> 1.0.0rc3'
end
group :test do
gem 'capybara'
gem 'factory_girl_rails'
gem "shoulda-matchers"
end
group :assets do
gem 'sass-rails', '~> 4.0.0.beta1'
gem 'coffee-rails', '~> 4.0.0.beta1'
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 1.0.1'
推最后的工作没有任何问题,但是当我试图迁移数据库,我有以下几点:
c:\Sites\elms>heroku run rake db:migrate
Running `rake db:migrate` attached to terminal... up, run.2205
/usr/bin/env: ruby.exe: No such file or directory
我也曾尝试: heroku run bin/rake db:migrate
,并让同样的错误。 我使用与Heroku的Rails的4.x版入门到4应用程序把我的Rails的Heroku。 任何帮助将不胜感激!
哦,我也有运行后的问题:
c:\Sites\elmx>gem install rails --pre
我解决了这个通过添加C:\RailsInstaller\Ruby1.9.3\lib\ruby\gems\1.9.1\bin;
在Windows 7我的环境路径变量(这是给我的错误,试图执行的内容,如当它找不到扶手:
rails -v
rails g controller User
但是,如果我输入只是:
rails
它会给我所有我能使用命令的(好像运行rails -h
)
我使用Windows的Rails安装,然后安装钢轨4创业板设立我的机器。 这是非常令人沮丧,我已经冲刷互联网试图找人同样的问题。
编辑1:
我只是删除我的用户Path环境变量和修改我的系统PATH环境变量看起来像这样:
C:\RailsInstaller\Ruby1.9.3\bin;C:\RailsInstaller\Ruby1.9.3\lib\ruby\gems\1.9.1\bin;C:\Program Files (x86)\git\cmd;C:\Program Files (x86)\Heroku\bin
更新我的路径变量上述和卸载的Heroku列工具,然后再重新安装了它(因此为什么Heroku的片是在路径变量)并尝试以下内容:
c:\Sites\elms>ruby -v
ruby 1.9.3p125 (2012-02-16) [i386-mingw32]
c:\Sites\elms>rails -v
Rails 4.0.0.beta1
c:\Sites\elms>heroku -v
! `-v` is not a heroku command.
! Perhaps you meant `-h`.
! See `heroku help` for a list of available commands.
c:\Sites\elms>heroku run rake db:migrate
Running `rake db:migrate` attached to terminal... up, run.2100
/usr/bin/env: ruby.exe: No such file or directory
c:\Sites\elms>heroku run bin/rake db:migrate
Running `bin/rake db:migrate` attached to terminal... up, run.2872
/usr/bin/env: ruby.exe: No such file or directory
编辑2:
所以,我在这家合资公司有远一点。 我发现我可以执行:
c:\Sites\elms>heroku run bash
~ $ cd bin
~/bin $ ruby rake db:migrate
这将然后运行耙和迁移在Heroku我的数据库。 但问题变得更糟! 我尝试浏览网页,它告诉我,有什么不对的,所以我运行日志文件,这就是我得到:
c:\Sites\elms>heroku logs
2013-03-16T05:34:20+00:00 heroku[api]: Enable Logplex by
2013-03-16T05:34:20+00:00 heroku[api]: Release v2 created by
2013-03-16T05:34:36+00:00 heroku[slugc]: Slug compilation started
2013-03-16T05:35:37+00:00 heroku[web.1]: Starting process with command `bin/rails server -p 13423 -e $RAILS_ENV`
2013-03-16T05:35:37+00:00 heroku[slugc]: Slug compilation finished
2013-03-16T05:35:37+00:00 app[web.1]: bash: bin/rails: No such file or directory
2013-03-16T05:35:39+00:00 heroku[web.1]: Process exited with status 127
2013-03-16T05:35:39+00:00 heroku[web.1]: Starting process with command `bin/rails server -p 33539 -e $RAILS_ENV`
2013-03-16T05:35:40+00:00 app[web.1]: /usr/bin/env: ruby.exe: No such file or directory
2013-03-16T05:35:41+00:00 heroku[web.1]: Process exited with status 127
2013-03-16T05:35:41+00:00 heroku[web.1]: State changed from starting to crashed
2013-03-16T05:35:41+00:00 heroku[web.1]: State changed from crashed to starting
2013-03-16T05:35:44+00:00 heroku[web.1]: Starting process with command `bin/rails server -p 23452 -e $RAILS_ENV`
2013-03-16T05:35:44+00:00 app[web.1]: /usr/bin/env: ruby.exe: No such file or directory
这是变得非常沮丧。 我不知道到底是什么/usr/bin/env
是。 我能猜到的唯一的事情是,它像PATH
的Windows。 如果是这样的话,为什么不知道服务器在哪里ruby.exe
是什么?
我也的确让非轨道4的应用,并能够将其发布到Heroku的并没有问题,查看它。 这真是让我心烦。