subtitle

RaiseTechの各種コースをはじめとしたイロイロな学習の記録

Railsでアプリケーションを実装してみる

Railsガイドに従って、アプリケーションを実装してみる。


Railsでよく出てくる用語

  • コントローラ:アプリケーションに対するリクエストを受け取って処理する
  • ルーティング:リクエストを割り振るコントローラを決める
  • ビュー:情報をユーザーが読める形式で表示する


コントローラを生成する

早速コントローラを生成してみる。

以前に作成したsample_appに、HelloCatsというコントローラの中にindexというアクションを作成するコマンドはコレ。

rails generate controller HelloCats index


いくつかファイルが自動で生成される。



ルーティングファイルを変更する

先ほど生成したindexビューを、http://localhost:3000 にアクセスしたときに表示されるホームページとして設定する。

config\routes.rbは、生成直後は下記のようになっている。


ここに、root 'hello_cats#index' を追記する。

root は、アプリケーションのルートURLへのアクセスを、hello_catsコントローラのindexアクションに割り当てるという意味になる。

get は、http://localhost:3000/hello_cats/index というリクエストを、hello_catsコントローラのindexアクションに割り当てるという意味になる。※getはコントローラ生成時に自動で記述されている。

Rails.application.routes.draw do
  get 'hello_cats/index'
  
  root 'hello_cats#index'
end


ルーティングの設定が完了したので、表示させてみる。



後でやること:

/がパスで#がアクションの件を追記しておく(AWSフルコース第4回のスレッドに記載の内容)



ビューを変更してホームページの内容を変更する

コントローラ生成時のビュー(app\views\hello_cats\index.html.erb)の中身を消して、下記のように変更

<h1>HelloCats</h1>
<p>ネコのブログ</p>


画像の追加

Railsの画像表示はちょっと特殊。画像の保存先フォルダを正しく指定しても表示されない。

画像は、app\assets\imagesの下に入れて、パスは、/assets/画像ファイル名 にすると表示される。

<h1>HelloCats</h1>
<p>ネコのブログ</p>
<img src="/assets/Shima.png">