第二章
Toyアプリケーションを作るらしい。
まぁ最初は第一章の続きだろうと思ってたら、早々に止まる。
まぁ昨日止まったから今朝からまとめ初めたんだけど。
アプリケーションを作る
新アプリケーション作成
$cd ~/environment
$ rails 5.1.4 new toy_app
$ cd toy_app/
まぁここまでは同じ。
Gemfile
も指示通りにコピペして保存。
$ bundle install --without production
ここまでは一連の流れ。
Gitに入れる。
$ git init
$ git add -A
$ git commit -m "Initialize repository"
ここでBitbucketで新しくリポジトリを作成して、作成したリポジトリでコマンドをたたく。
$ git remote add origin git@bitbucket.org:
/toy_app.git
$ git push -u origin --all
確認するとpushが概要に反映されている。
公開鍵の設定のおかげでここまではすんなりといくようになった。
サンプルで”hello,world!"の表示を確認。
Herokuにプッシュ
$ git commit -am "Add hello"
$ heroku create
$ git push heroku master
ここまではすんなりと。
create
したときのドメインでブラウザ表示が出来たし。
でも、練習でcreate
してたら制限回数を超えたらしい。
5つってことらしい。
Herokuのアプリケーションの削除
なのでHerokuのページに行ってみる。ところでHerokuでどうやって削除すればいいんだ?と検索。
コマンドからも出来たらしいのだけど、その作ったIDE側のファイルは削除しちゃったからわからない。
なのでサイトから。
まぁアプリケーションを選択するとメニューに「Settings」ってあって、下の方に
これですね。クリックすると
って表示されるので、()の中の文字をテキストエリアにコピペすると、Delete app
が活性になる。
で、削除。
トライ アンド エラー
中ですので、削除します。
Usersリソース
ここではユーザー用のデータモデルを、そのモデルを表示するためのWebインターフェイスに従って実装するってことらしい。
で、このチュートリアルではUsersリソースはすべてのRailsプロジェクトに標準装備されているscaffoldジェネレータで生成するってことで
$ rails generate scaffold User name:string email:string
止まった。
固まったって感じです。え・・・?な感じ。
検索・・・
$ spring stop
$ bin/spring
これのあとに再度やったら行った〜。
ふぅ〜。
データベースをmigrate
$ rails db:migrate
さて、問題です。rails generate scaffold User
すると勝手にファイルが作成されるわけですよね?
どのタイミングでcommitしてpushすべきだ?
ってことで、とりあえず
$ git status
で、そうですよね?を確認して
$ git commit -am "Add scaffold"
$ git push heroku master
してみました。
そして別ターミナルで
$ rails server
ローカルサーバで確認する
ここで勘違いをした自分がいたわけですね。
これはあくまでも「ローカルサーバ」だからデプロイする必要はなかったのか?
ってことで、ローカルサーバでユーザーのアクションを確認した。
なるほど〜。ってそのことに気づかずに何度トライアンドデリートしたことか。
で、トライアンドデリートであったもうひとつの問題。
Cloud9でHeroku使おうとしたらエラーだよ
create
はうまく行ったように見えたのだけど、それなのにgit push heroku master
はエラー?な感じ。
$ heroku -v
ってやったら
WARNING
WARNING Node version must be >=8.3.0 to use the Heroku CLI
WARNING
なんじゃこりゃ。
node.jsのバージョンがち〜が〜う〜だ〜ろ〜ってことらしいです。
バージョン確認
$ node -v
v6.11.X
v8.3.0なんてないし。
ってことで、
$ nvm install v8.3.0
いいねぇ〜この辺はすんなり入る。ローカルだと権限がとかいろいろ言われそうな感じだけど。
$ nvm use --delete-prefix v8.3.0
これをしないと使えるようにはならないのか?
でバージョン確認したら
$ node -v
8.3.0
よし!これでいいんでしょってことで再度
$ heroku -v heroku-cli/6.14.43 (linux-x64) node-v8.3.0
これで大丈夫らしい。
でも、この後に上で書いたハングアップがあったりしてエラーアンドデリートばかりしてたけど、この設定は1回したら大丈夫らしい。
基本的には自分の備忘録なので同じ症状でヒットしたけど、うまく行かなかったはごめんなさい。他を当たってくださいね。
きっと見つかります。私はここまではうまくいきました。