こちらのサイトがわかりやすそうなので、見ながら作業してみる。
CURDのやつがherokuにデプロイ出来れば目標達成。
http://gihyo.jp/dev/serial/01/heroku/0002?page=2
サイト見てばっかりだが、最初の環境構築はわかんないので仕方がない。
CURD
$ rails g scaffold Product name:string price:float url:string $ rake db:migrate $ rm public/index.html
config/routes.rbに以下の行を追加
root :to => "products#index"
動作確認
$ rails s
ブラウザでhttp://localhost:3000/にアクセスして,動作確認。
ローカルではうまく行く。
以下の感じ。適当に追加した後。
●herokuへのデプロイ作業
$ git add . $ git rm public/index.html $ git commit -m "Scaffold products"
$ git push heroku master $ heroku run rake db:migrate $ heroku open
※ここで、heroku側でCURDのサンプルが表示されるはずだが、表示されない。。。
相変わらず、初期画面のままです。
●原因
$ heroku run rake db:migrate
実行時に、以下のエラーが出てたの見落としてた。
Running `rake db:migrate` attached to terminal... up, run.1 rake aborted! No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)
- さらによく見たら、「$ git push heroku master」の時にエラー出てた。。。
An error occurred while installing sqlite3 (1.3.6), and Bundler cannot continue. Make sure that `gem install sqlite3 -v '1.3.6'` succeeds before bundling. ! ! Failed to install gems via Bundler. ! ! Detected sqlite3 gem which is not supported on Heroku. ! http://devcenter.heroku.com/articles/how-do-i-use-sqlite3-for-development ! ! Heroku push rejected, failed to compile Ruby/rails app
-
- ってか、こちらのサイトに書かれてました。
http://d.hatena.ne.jp/EnnuimaZ/20120407/1333806290
-
- 修正方法は全く同じです
heroku だと、 sqlite3 がビルドできないので、開発環境でだけ使うよ、っていう宣言が必要 (heroku では、 production の gem だけビルドされる) -gem 'sqlite3' +gem 'sqlite3', groups: %w(test development), require: false これもいれといたほうがいい +gem 'pg', groups: %w(production), require: false
-
- 修正。修正後はGemfileを更新するため、以下のコマンドを実施。そしてエラー発生
$ bundle install An error occured while installing pg (0.14.0), and Bundler cannot continue. Make sure that `gem install pg -v '0.14.0'` succeeds before bundling.
-
- bundleをinstallする前に、pgを入れろと。仰せの通りにpgをインストールしようとしたが、出来なかった。。。ハマった。。。
- 検索したら、以下のサイトがヒット!
http://d.hatena.ne.jp/EnnuimaZ/20120123/1327334199
$ brew install postgresql
-
- って、brewって、、、→Homebrewはインストールしていなかったので以下のをサイトをもとにインストール
http://d.hatena.ne.jp/absj31/20120404/1333546097
-
- 再度postgresqlのインストールを行いインストール完了。インストールに意外と時間がかかった。
- よっしゃー!気合を入れて、最初からコマンドを実施していく。
$ bundle install $ rake db:migrate $ git add . $ git rm public/index.html $ git commit -m "test" $ git push heroku master $ heroku run rake db:migrate $ heroku open
●キター!!!!
出来なかった事が出来るようになった時の感動は。。。最高ですな!!
大変だった。。。環境構築はやっぱりわかんない部分が多いから時間かかるなぁ。
ちなみに、いろいろいじったので、herokuのリンクはこちらになります。
前回と変わっています。
http://rocky-chamber-4956.herokuapp.com/
やべぇ。仕事行く支度しなきゃ。