サーバに送るパラメータについて

今日、意外のことがわかった。今更ね。

フォームのメンバーオブジェクトがサーバにパラメータを送る時、
パラメータ(ハッシュ)のキーなるのは、
フォームのメンバーオブジェトのid属性ではなく、nameという属性だ

ということがわかった。

id名とname名がいつも 同名になっている所が多かったので、
name名は別に必要じゃない〜?といつも思った。id名はjavascriptで使えるから
一応必要だと思っていた。

railsでは意外な使い方があった。

例えば:

以下はviewの中formのメンバーオブジェクトの属性 name名の付け方について
書いている。


<input type="text" id="t1" name = level1[user1] value="こんにちは">

<input type="text" id="t2" name = level1[user2] value="こんばんは">

というふうに書いている場合は
サーバにパラメータを送ったとき
パラメータはこんな風になっている。

parameters => {
"level1" =>{ "user1" => "こんにちは" , "user2" => "こんばんは" }
}
なので、name名をうまく利用すれば、controllerに書くソースコードが非常にシンプルになる可能性があるので、
ぜひ活用してみてください。