ブシトラの日記

エンジニア1年生の雑多記事

Railsガイド6.0読み直す ~1章 Railsをはじめよう~

実務でRailsを触っているが、Railsの断片的な知識を補完したい&大抵のことはRailsガイドに書いてあるともあったので、ちょこちょこ書いていく。

https://railsguides.jp/getting_started.html

 

大切なところor知らなかったところだけ書いていきます。

(自分が見直した時に復習になるよう、知識の定着化を測るためのものなので他の人には役に立たないかも?)

Railsをはじめよう

1 本ガイドの前提条件

Railsガイドは完全初心者を対象→多分完全初心者がRailsガイド読んだら結構きつそう

2 Railsとは何か

同じことを繰り返すな (Don't Repeat Yourself: DRY)

→ パーシャルとか、何かと共通処理はまとめるよね

・設定より規約が優先される (Convention Over Configuration)

→ ある程度決めてないとごっちゃになる。例えば、7action以外のコントローラーは作るべきではないとか

3 Railsプロジェクトを新規作成する

・ rails new -hを実行すると、Railsアプリケーションビルダで使えるすべてのコマンドラインオプションを確認できるのは知らんかった

4 Hello, Rails!

・アセットの圧縮にはJavaScriptランタイムが必要→どういうことかよくわからん、Jsほんとに苦手意識が半端ない

5 アプリケーションの実装と実行

・form_with scope: :article, url: articles_path, local: true

→ これ最初はとっつきにくい、method: :postがデフォで他にするときは指定する必要あるし、local: trueを忘れてハマったのはいい思い出。

・migrate管理はridgepole使うところが多いらしいよね

・redirect_to @article と、 article_path(@article)は一緒だけど、前者のほうが短くてヨシ

def destroy @article = Article.find(params[:id]) @article.destroy redirect_to articles_path end

・destroy!で例外吐かせるor、elseで失敗させるのかは未だにどれがベストかわかってない。けど現場Railsがこう書いてるから分岐させる必要はないだろう。

6 2番目のモデルを追加する

・ form_with(model: [ @article, @article.comments.build ], local: true) do |form| ネストしてる時にこう書くのは初見

7 リファクタリング

8 コメントを削除する

9 セキュリティ

・http_basic_authenticate_withは初見。deviseとsorceryとか認証色々あるよね

10 次に学ぶべきこと

11  設定の落とし穴

・部データを常にUTF-8で保存しておくこと

 

一章はほぼ理解してた、と思う。