Rails 大まかな流れ(4)

今回は入力された情報を受け取り、データベースに保存し、そしてデータベースから情報を取得するという流れをまとめます。

 

まず、ユーザーが入力した情報はparamsというものに入ります。paramsで受け取る際のHTTPメソッドはpostです。

HTTPメソッドとはユーザーが行いたいメソッドをサーバーに伝えるという役割があります。計8つあります。

 

POST

リソースの取得

GET

リソースへのデータ追加

PUT

リソースの更新

HEAD

メタデータの取得

DELETE

リソースの削除

OPTIONS

リソースがサポートしているメソッドの取得

TRACE

プロキシ動作の確認

CONNECT

プロキシ動作のトンネル接続への変更

 

POSTとGETの違いは、POSTはユーザーが入力した情報などサーバーへ何かしら情報が送られます。GETはサーバーに対しページを表示させるなどのリクエストを送るだけなので、サーバーには何も情報は蓄積されません。

 

さて、ユーザーが入力した情報はparamsに入り、それがデータベースに送られます。

 

def create
Article.create(title: blog_params[:title],
image: blog_params[:image], content: blog_params[:content],
user_id: current_user.id)
end

createアクションは、リソースを新規作成し、保存するアクションです。

ここでは、ブログに記事を投稿するとデータベースへその内容が送られるよう設定できます。

title,image,content,user_idがそれぞれデータベースに保存されます。

 

そして、受け取った情報(データベースに格納された情報)を、表示させたい場合は、getアクション(index, new, edit, show)に渡し、ビューに反映させます。

 

def index
@articles = Article.includes(:user).page(params[:page]).per(5).order("created_at DESC")
end

 これは、前回記載したものと同じですが、articleテーブルに入っている情報を@articleに入れ、indexのビューに渡します。