Railsを理解する上で大切なこと
18日目です。
本日の学習で、半年間Progateで挑戦するたびに挫折してきた「Rails」が、手に取るように頭に入ってきて、とても感動しました。
なぜできたかというと、いいアドバイスをもらえたからです。
それは、「ルーティング」「コントローラー」「ビュー」「モデル」の中で、今どこのコードを書いているのか常に意識しながら学習する、というものです。
A4の紙に下記のように書いて、今どこのことをやっているのか、なんの内容をやっているのか周りにびっしり4枚書きました。
※なお、スクールの先輩が「RailsはProgateの方が理解しやすい」というので、本日はProgateのRails第1〜第3章まで進めました。
各用語は、自分なりに下記のように理解しています。
①ルーティング(config/routes.rb)
・プラウザから送られてきたURLに従って、どのコントローラーのどのアクションで処理するか振り分ける
②コントローラー(app/controller/〇〇_controller.rb)
・コントローラーと同じ名前のビューフォルダから、コントローラーで定義したアクション(メソッド)と同じ名前のHTMLファイル(html.erb)をプラウザに返す。
③ビュー(app/views/フォルダ名/ファイル名.html.erb)
・プラウザに表示したいHTMLを作成したファイル。<image src = "/〇〇">で画像も入れられる。
④モデル(app/models/〇〇.rb)
・データベースの設計図であり、テーブルを操作する指示が書かれているファイル(マイグレーションファイル)を持つ。また、新たにインスタンスを生成し、データベースに保存する役割をもつ。
⑤データベース
・指定されたカラム名でテーブルを作り、レコード(行)とカラム(列)でデータを管理する。idと作成日時、更新日時は自動作成される。
上記の理解と、「新しいページを作成するためにはルーティング、アクション、ビューが必要」であり、今作っているページは「トップページ」「サイトの説明ページ」「新規投稿ページ」など、何を作っているのかを意識することで理解力が高まりました。
ーーーーーーーーーーーーーーーー
明日で事前学習最終日なのですが、現在進捗が48%で、当初掲げていた「2/3」の目標(66.6%)まで、残り18.6%残っているので、なんとか明日到達できるように頑張ります。