Controllerについて その1
今日はControllerについてわかったことを記事にしました。
まず、Controllerはブラウザとモデル、ビューの間に入って色々と仲介をしているのだという認識です。実際にコントローラファイル内でアクションを定義してそれを色々なファイルに反映していくようです。
具体的に、
rails generate controller コントローラ名
でapp/controllers
の配下にコントローラ名.rb
のファイルが作成されます。
.rb の部分はこのファイルがRubyファイルであることを表しています。
そしてファイル内には
class コントローラ名Controller < ApplicationController end
とクラスの継承が書かれています。
アクションの定義は普通にRubyで
def アクション名 実行したい処理 end
と先ほどのクラスの中に書いていきます。
コントローラ作成時にアクションも同時に作成できるらしいのですが、他にも色々と覚えることが多いので今は、覚えずに放置します。 アクションの処理を具体的に加えると、
class UsersController < ApplicationController def index @user = User.all end end
のようなコードになります。
UsersController
クラスの中にindex
という アクションを定義しました。
処理の中身は今回はまだ作っていませんが、データベースの中にあるUser
テーブルの全ての値をall
メソッドで取得して、インスタンス変数@user
の中に代入しています。
今日は以上です。
Controllerとアクションだけでも記事にできることはたくさんあると思うのですが、Progate, tutorial とインプットできる時間が減りそうなので、 どれくらいの頻度で記事を書くのかは少し検討したいと思います。