Railsチュートリアル半分終わったのでその感想をまとめた

Webエンジニアへの道

はじめに

 

 Railsチュートリアルの学習を始めて10日弱経ち、ようやく半分(第7章まで)クリアしたのでその感想をまとめてみようと思います。

 

思ったより理解できた。

 私は、Railsチュートリアルを始める前におよそ1カ月かけて、書籍やProgate等でRubyやRailsのことを学んでいました。

なので、チュートリアルの内容も割とすんなり理解することが出来ました。第一章のデプロイの部分や、Progateでは全く触れていなかったテストの部分は除いてですが。

もし初めてRailsを学ぶ際、いきなりRailsチュートリアルから始めていたら、全然理解できなかっただろうし、時間も滅茶苦茶かかってプログラミングをするのが嫌になっていたかもしれません。なので私としてはRailsを学ぶ上でのド基礎の部分をProgateで学習して固めていたのは良かったと思います。

 

Progateとは違う表現が結構出てきた

 学習を進めていくとProgateで学んだやり方とチュートリアルに出てくるやり方が「あれ?なんか違う!」と思う場所があったので紹介します。

 

  1. redirect_to

Progateでは、ユーザーの詳細画面のredirect_toを

redirect_to("/users/#{@user.id}")

で書いていましたが、Railsチュートリアルでは、

redirect_to @user

で書いてました。Progateから始めた私としては、え?これだけでうまく行くのか不安になりましたが問題ないようです。

 

2.バリテーション

Progateのemailのバリテーションは、

 validates :email,{presence:true,uniqueness:true}

だけしかないので、emailのところにどんな形の文字列が来てもエラーは出ません。ただ、存在して同じ文字列でなければよいのです。しかし、Railsチュートリアルのバリテーションは、

VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-]+(\.[a-z\d\-]+)*\.[a-z]+\z/i
validates :email,presence:true,length: {maximum:255},
format: { with:VALID_EMAIL_REGEX },
uniqueness: { case_sensitive:false }
 
正規表現といったものを使って指定されたフォーマットでなければ反応しないようにしたり、大文字小文字の差を無視することが出来ます。
 
他にもデバック、テスト、パーシャルなどProgateでは触れていないことが沢山出てきました。
 
Progateではwebアプリとしてそれっぽいものは作れますが、本物のwebアプリを作るならこれだけやることは多いと改めて実感します。
 
 

躓いたところ

1章でよく出たエラーについてはこちらに載せていますが、
 
 
2~7章をする間に私が躓いていた点について最後に触れていきます。私は、UNIXコマンドに慣れたいがためにWindowsのGit bashとVS codeを使って開発をしていました。
 
学習を進めていくと、rails consoleを使う場面が出てきたのでGit bashで
rails c
を入力しました。
 
すると、
 
 
といった画面が表示されて上手くrails console出来ませんでした。調べてもよくわからなかったので、一時期rails consoleだけはコマンドプロンプトで開くというかなり面倒なことをしていました。(-_-;)
 
 
今までVS code内のターミナルをrails serverするためだけに使っていたのですが、たまたまGit bashをVS code内で開いたらどうなるかなと思いつき、試しにやってみたところ
 
 
理由は分かりませんがこちらでは、rails cをすることが出来ました!
 
 
プロンプトの方では動かず、VS code内ではうまく動く理由が知りたいです(笑)
 
 

まとめ

 
1~7章は、多少難しいところがありましたが今のところ順調に楽しく開発が出来ています。ただ後半からログインログアウトのことなど、Progateの方でも苦戦していたところを学ぶことになるので気を引き締めていきます。
 
 
 
 
 
 
 
 

コメント

タイトルとURLをコピーしました