楽しむ者に如かず。

カタチに残したい。CREATORになるための勉強。最後に書いてあるのはスヌーピーの名言です。

プログラミングド素人のRuby on Railsチュートリアル成長日記 (第3回)チュートリアル第2章クリア

こんにちは。大学生のyosukeです。

 

リーガルハイブーム再熱してます。

リーゴッハイ!!

新垣結衣と1度だけでもデートしたいんデスケド、どうすればいいですかね。

 

挑戦している環境

railstutorial.jp

現在、このサイトをみながら独学でRuby on Rails勉強中です。

パソコン    :windows7

ruby           :2.1.5

プログラミング歴:1ヶ月

 

前回まで

yosuke0414.hatenablog.com

 前回は、sqlite3に苦しめられながらも、なんとか第1章クリアしました。

sqlite3のせいで、丸1日かかりました(笑)

 

今回は第2章に挑戦です。demo_appを創っちゃいます。

 

第2章

今回は、詰まる部分が前回挑戦したときとほとんど同じ場所だったんで比較的スムーズに進みました~~~

 

詰まったところと解決方法をまとめていきます。

 

・scaffoldジェネレーターでひっかかる

ユーザーの登録画面をつくるために、ジェネレーターでつくります

rails generate scaffold User name:string email:string

f:id:yosuke0414:20150517221534j:plain 

はい、コケタ。

エラーメッセージを読むと、、、、

 

「sqlite3」

 

おい。またおまえか。(笑)

 

なんで、ひっかかるだろうな~。windows8でやってたときは、1回もこのエラーなかったのに。

 

第1章の同様に、Gemfileを弄ります。

group :development do
gem 'sqlite3', '1.3.8'
end

これを

group :development do
gem 'sqlite3'
end

 

こう変更する。これで、上手くいっちゃうんですよね。私自身、プログラミング初心者なので、これが正攻法なのか、まったくわからない。

とりあえず、上手くいかなくなるまで、sqlite3でつまった時はこれで直そう。

 

はい

rails generate scaffold User name:string email:string

 f:id:yosuke0414:20150517221616j:plain

次は、どうかな。

はい、また、コケタ。これは前回第2章挑戦したも発生しました。

configで詰まるみたいですね。

解決します。

 

undefined method `configure' エラーの対処法 - ベスパライフ

このサイトを参考にしました。

 

config/environments/development.rb

Rails:application.configure do

これを

DemoApp::Application.configure do

こう変更する。

 

ほい、

rails generate scaffold User name:string email:string

 (写真、とり忘れました、、、)

 

また、コケタ。これも前回あったワ。

結局、configなんすよね。

改善します。

 

今度はrails newしただけのappが動かない。 - るびらな!

ここのサイトを参考にしました。

 

config/enviroment.rb

# Load the Rails application.
require File.expand_path('../application', __FILE__)

# Initialize the Rails application.
Rails.application.initialize!

 

これを

# Load the Rails application.
require 'tzinfo'

# Initialize the Rails application.
DemoApp::Application.initialize!

こう変更する。

 

3度目の正直
rails generate scaffold User name:string email:string

    invoke  active_record
      create    db/migrate/20130305221714_create_users.rb

      create    app/models/user.rb

      invoke      test_unit

      create      test/models/user_test.rb

      create      test/fixtures/users.yml

      invoke  resource_route

       route  resources :users

      invoke  jbuilder_scaffold_controller

      create  app/controllers/users_controller.rb

      invoke    erb

      create      app/views/users

      create      app/views/users/index.html.erb

      create      app/views/users/edit.html.erb

      create      app/views/users/show.html.erb

      create      app/views/users/new.html.erb

      create      app/views/users/_form.html.erb

      invoke      test_unit

      create      test/controllers/users_controller_test.rb

      invoke  helper
      create      app/helpers/users_helper.rb
    invoke      test_unit
      create        test/helpers/users_helper_test.rb

      invoke    jbuilder

       exist      app/views/users

      create      app/views/users/index.json.jbuilder

      create      app/views/users/show.json.jbuilder

      invoke  assets

      invoke    coffee

      create      app/assets/javascripts/users.js.coffee

      invoke    scss

      create      app/assets/stylesheets/users.css.scss

      invoke  scss

      create    app/assets/stylesheets/scaffolds.css.scss

 

ほい、通った!!!!成功(・ω・)ノ

 

rails s でつまる。

ここでもつまりました。

 

とりあえず、rails s

=> Booting WEBrick
=> Rails 4.0.5 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Notice: server is listening on all interfaces (0.0.0.0). Consider using 127.0
.0.1 (--binding option)
=> Ctrl-C to shutdown server

通った!!

 

http://localhost:3000/に確認!

 f:id:yosuke0414:20150517221806j:plain

、、、コケてます。これは、gemfileの問題なんですよね。

改善します。

 

gem 'rails', '4.0.5'

これを

gem 'rails', '4.1.0'

こうする。

 

 

はい、rails s

=> Booting WEBrick
=> Rails 4.1.0 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Notice: server is listening on all interfaces (0.0.0.0). Consider using 127.0
.0.1 (--binding option)
=> Ctrl-C to shutdown server

 

ほい、通った!!

http://localhost:3000/に確認しにいく

 f:id:yosuke0414:20150517221853j:plain

 

ほい、とおってる!!

 

scaffoldジェネレーターで作成できたところを確認しにいく!!

http://localhost:3000/usersを確認!!!

 f:id:yosuke0414:20150517221913j:plain

 

エラー起こしてるし、、、、、、(笑)

修正します。

 

 

Rails4 - Windows 7 の Rails で ExecJS が TypeError を吐くようになった - Qiita

このサイトを参考にしました。

(ここのサイト主さんも、windows7でこけてる、、やっぱダメじゃん、windows7)

 

Rails がエラーを吐くようになったのは,どうも 1 月末あたりっぽい。

そこで,この頃にアップデートした gem が何かを調べてみた。すると,coffee-script-source が 1 月 29 日に 1.8.0 から 1.9.0 に上がってた。これが怪しい。

この gem は,CoffeeScript の処理系を提供するためのものらしい。つまり,CoffeeScript スクリプトを読み込んで JavaScript スクリプトに変換してくれるコンパイラー(JavaScript で書かれている)がこの gem の中に入っている。

gem のバージョン番号は CoffeeScript のバージョン番号に合わせてあるようだ。

 サイトから引用させていただきました。

 

これを解決するために

Gemfileに

gem 'coffee-script-source', '1.8.0'

の1文を追加する

 

bundle update

とおった!!

 

rails s

とおった!

 

http://localhost:3000/usersに確認

 f:id:yosuke0414:20150517221959j:plain

 

通ってる!!!!!成功です(・ω・)ノ

 

何回やっても、rails sのエラーを解決するのは、キモチイイっすわ。

ローカル環境にしろ、google cromeに自分が作ったの表示されるの嬉しいっすもん

 

ここからは、特にミスなし

 f:id:yosuke0414:20150517222034j:plain

つくった、appに自分の名前を登録したり、

 f:id:yosuke0414:20150517221501j:plain

おれのダイスキな某学生団体のK局員の名前羅列させて遊んだり。

 

第2章のherokuが少し、微妙なくらいですかね~~~

 

第2章クリア!!

第2章は1日でクリアできました!!2時間くらいですかね。

 

windows8で挑戦したときは1週間ぐらいかかったので成長しました。

次は、第3章。windows8の方でも終わりきってなかったところです。

頑張ります。

yosuke

 

プロポーズ大作戦

半沢直樹

モテキ

ブザービート今とっても 観たいです。

ドラマいいですよね。モチべーションです。

われながら、安上がりな趣味です(笑)

 

 人生てのは、一人で直面すべき

いろいろな経験に満ちている!

ーチャーリーブラウン