🕶️

2週間でrails tutorial制覇したい奴

2023/03/11に公開

この記事について

語尾に知らんけどをつけてください
railsの入門です
中身はないです

rails tutorialとはなんぞ

こいつ
https://railstutorial.jp/

14章とかなりの大ボリューム。初心者向けを謳っているがはたして..

動画、解説はまあまあ高いのでwebテキストを取り組む(挫折しやすいらしい)

料金体系はこんな感じ

動画 コミュニティ 現役エンジニア質問付き
¥32,780 ¥40,480 ¥59,000

ちなみに、webテキストは1000円ちょっと。

3章まで無料なのでちょろっと覗いてみたりするのも良さそうです。

(2023年3月1日時点)

なぜ2週間か

rails guidesというレファレンスが同じ会社から出ている。

そのproプランが15日間は無料で使用できる。

https://railsguides.jp/pro

無料期間内にクリアしてしまおうという魂胆である。

1周目

さっと流し読みする。章ごとに軽ーくメモする。

1周目の1章のメモとする。1.2は1周目の2章のメモ。以下同

1.1

環境構築大変なので、クラウドの開発環境使うよ。

こいつを使うらしい

https://aws.amazon.com/jp/cloud9/

AWSのアカウントに登録必須。

エディタのインデント設定は4ではなく2にしよう
(pythonでは4にしようだったなー)

保存時に自動で空白削除してくれる設定もonにしよう
(チーム開発でgithubを使う時に役に立つのかな)

bundlerについて

gemについて
(pythonのpipみたいなパッケージ管理ソフトかな)

railsはMVCのアーキテクチャパターンを採用してるよ
(pythonのDjangoもこんなの使ってた気が...)

ルーティングはconfig/routes.rbで制御

gitとかgithubのセットアップしよ、必須だよ

ミスしてもgit addしてなければ、git restoreで一つ前のコミットの状態に戻せるからおすすめだよ

ホスティングサービスにデプロイするよ。今回のチュートリアルではRenderというサービスを使うみたい

https://render.com/

感想

長、重。

手を動かしてみた。

自動でデプロイされるのすごいなあ(renderのダッシュボードを見ながら..

一度run serverで詰まったが、Gemfileのrailsのところを以下のように変更したら通った

gem "rails", "~> 7.0.4"

~>が大事なようで、マイナーアップデートを包括する、という意味の記号ぽいです

1.2

scaffoldとは
一通りにCRUD操作可能なとこまで自動で構築できるコマンド

restアーキテクチャとは
apiのアーキテクチャ

演習はまあまあ飛ばしてます

has_manyなど、データモデル同士を関連付けるためのメソッドがある

1.3

$ rails generate controller StaticPages home help
$ rails destroy controller StaticPages home help

Unixのtouchコマンドでファイルを作成するとかっこいい!!!

$ touch app/views/static_pages/about.html.erb

テスト駆動開発では「 red ・ green ・REFACTOR」サイクルを繰り返す

一通りテストが成功する
ブランチをマージする
メインブランチでもう一度テストする←←←ここ重要
プッシュする

rubyではincludeメソッドをつかってモジュールを読み込まない都ならないが、railsでは、自動でヘルパー関数を読み込んでくれる模様

rangeについて

>> 0..9
=> 0..9
>> 0..9.to_a              # おっと、9に対してto_aを呼んでしまいました
undefined method `to_a' for 9:Integer (NoMethodError)
>> (0..9).to_a            # 丸カッコを使い、範囲オブジェクトに対してto_aを呼びましょう
=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

%wで文字列の配列に

便利

インデックスに-1を使うことで配列の長さを知らなくても配列の最後の要素を指定することができる

&:メソッド名 省略記法がなぜか使えなかった
"symbol-to-proc"

Discussion