LoginSignup
1
1

More than 5 years have passed since last update.

strongparameterで起こっていること

Last updated at Posted at 2018-04-22

裏での動きが知りたい

strongparameterはrails勉強していると、初心者が必ず学ぶ道ですが、最初の方はとりあえず同じDBとカラムを書いておけばいいや〜程度にしか思っていませんでした。しかし、最近勉強していると裏で起こっていることをしっかり説明できるようにしたいと考えるようになり、この記事を書くことに至りました。

strongparameterとは?

データを格納するカラムを制限し、不正データを防ぐ仕組み。同じみ書き方はこんな感じ。

#example_controller

 def comic_params
      params.require(:book).permit(:title, :author, :picture)
 end

なんとなく、このように書くんだ、と教えられてきたから形式的に書いてきたけど。。。。。
このように書いて実際はデータがどうpostされるのか一連動作が知りたかった。。。。。

実はこんな形

params[:book][:title]
params[:book][:author]
params[:book][:picture]

bookがキー、titleやauthorがバリューです。さらにその中で。。。。。

params[:book] = {
 title: "実際の値"
 author: "実際の値"
 picture: "実際の値"
}

今度はtitleがキーになり、バリューが実際の値として入ります。

#ターミナル
"book"=>{"title"=>"TT", "author"=>"tsutsumi", "picture"=>"example.jpg"}, "commit"=>"Create Book"}

ターミナルを見ても形は上のようにハッシュ形式で入っています。

ハッシュ形式についてはこちら

細かいけど重要かなと思いました。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1