Ruby on Rails tutorialを通してのメモ (第1章後編)

前回まで

taokiengineer.hatenadiary.jp

 

  • こちらでは記事を投稿し始めた理由とRuby on Railsでデフォルトページを示させるまでのメモを残しています。

 

作業開始  

point

  • MVC(Model(モデル),View(ビュー),Controller(コントローラー))はRailsアプリケーションの仕組みのこと。まずは図を見て流れを掴む...難しいけど。

  • Railsのappディレクトリ内に「models」,「views」,「controllers」が配置されている。ぜひ、確認してみてください😁

  • ブラウザにボタンをクリックするなどのアクション(request) 👉 Railsのコントローラで処理 👉 view(HTMLファイル)で対応する画面をブラウザに返す or モデルを呼び出し、その後viewをブラウザに返す。  (tutolialの図1.14を参照)

 

@1.3.4 Hello, world!

 

point

  • 先ほどのRailsアプリケーション(hello_app)に「hello, world!」 という文字列を表示するように変更を加える。
  • リスト17に従い、コントローラを編集する。ここでは、文字列hello, world!を返すアクションを定義している。(render html: "hello, world!")
  • 次に、デフォルトページの代わりにhello, world!を表示できるようにルーター(router)を編集する。
  • ルーター(router) はブラウザ(view)からのリクエストをコントローラに振り分ける。(今回のapplication_controllerはルーティングからリクエストを受けhello,world!を表示させる処理をしている。)ここら辺から図を書いてイメージすることをオススメします。🙄
  • デフォルトページを差し替える際は、ルート(root)のルーティングを変更する必要がある。(今後アプリケーションを作成する際には一番最初のページ(rootパス)はrootであることを覚えておこう!)
  • リスト1.9に従い、ルーティングを編集する。
  • ルーティング(root 'application#hello)の root は ルートパス、application は コントローラ名、hello は helloアクション (application_controller.rbに記載されているdef helloのこと。)

 

■ リスト1.7ではコントローラにhello, worldを表示させる記述をしている。

app/controllers/application_controller.rb

def hello #helloアクション
render html: "hello, world!" #hello, world!を表示させる
end

因みに、

class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception

 ↑の部分はあとで考えましょう😇

 

 

 ■ リスト1.9ではルーティングを設定している。

コントローラ(application_controller)に対応しているので見比べて見ましょう。

 

  root 'application#hello'

 

 

 

@ Github?Heroku? 👉 今回は飛ばしましょう!👊 

  • まず、解説できなくてごめんなさい。🙏
  • Githubソースコードバージョン管理ツール、つまり作成したアプリケーションファイルをGitと呼ばれるところに保存し、Githubで変更履歴を管理できるすごいやつです。ほとんどの企業が使っているでしょう!(subversion?知りません。)
  • つまり、個人や複数人で一つのアプリケーションを作成する際にどこ修正したっけ?どこまでをいつやったっけ?...とならないようにできます。
  • Herokuは作成したアプリケーションを公開できるようにしてくれるありがたいツールです。PaaSと呼ばれています。(個人的にはAWSよりは簡単に公開できます。)

仮にGithub、Heroku知っている場合は余分ですし、Ruby on Railsを学びたいのであればローカルでも作れるので、正直後からでもできます。(言い訳)

 

to be continued... 
  • RailsMVCという仕組みで構成されている。Railsに限らず、Webアプリケーションはこの仕組みで作られているのでRails以外でも役に立つ知識だと思います。
  • controller, router...難しい用語がいっぱいで最初はかなり大変でした。
  • 初心者の場合はエディタ(IDE)の使い方から調べる必要がありますね。私の場合はVSCodeです理由は、新しいので👍。プログラミングをするときはエディタを改造してモチベーションを高めるのもいいですね〜。
 
オススメの曲
 
Is it just our bodies?
 
このフレーズがかっこいいんですわ