①tweet投稿!
▶︎ビュー
L httpメソッド:post
L パス(URL):/tweets/
②サーバー通過!
L post '/tweets'
③ルーティングでルート選択
L tweets(コントローラーの)#create(postだったらこのアクション)へLet's Go!
④コントローラーで保存先を決定
Tweet(モデルへ).create([保存]アクションをするよ)
def create
Tweet.create(tweet_params)
end
private
def tweet_params
params.permit(:text)
end
⑤コントローラーで保存先&内容決定
⑤-1 ストロングパラメーター
▷保存内容を厳選! ▷セキュリティ強化!
tweet_params
どんな内容になってるのか、覗いてみよう!
⑤-2 params
params.permit(:text)
▶︎params:いくつもの情報※が入っている(=大きなハッシュ[キー:バリュー])
▷キー:name属性 (view>tweets>new.html.erb)
▷バリュー:入力された情報 (form_tagで指定したパスより)
▶︎binding.pry ※いくつもの情報を確認する方法
L(1) : def create
(止めたいアクション)の下に記載
L(2) : web site上で、確認したいアクションを実行(投稿ボタンを押す など)
L(3):ターミナルに【キー:バリュー】のハッシュスタイルで情報が出力される
見えたところで、今回保存したいのは【text】だ!
▶︎permit:許可する
(:text)
これでテキストだけ保存されるように、指定完了!
⑥モデル通過
数あるモデルの中からTweetモデルを通りまして、
⑦データベースに保存
やっと保存出来たぞ!わーい!わーい!
⑧ビューへ反映
来た順路を帰ります。
データベース(⑦)→モデル(⑥)→コントローラー(⑤,④)
→(ルーティングは設定が書いてある場所だから、帰りはスキップ!)
→サーバー(②)→ビュー(①)
投稿
の旅、お疲れ様でした!