複数のレベルを持つ必要があるajax関数からコントローラーにデータを送信しようとしているので、次のようになります。
{
"lob": {
"TESTING": [
{
"name": "color",
"value": "1"
},
{
"name": "time",
"value": "2"
},
{
"name": "jeremy",
"value": "3"
},
{
"name": "fourtytwo",
"value": "4"
},
{
"name": "owl",
"value": "5"
},
{
"name": "why",
"value": "6"
},
{
"name": "derp",
"value": "7"
},
{
"name": "where",
"value": "8"
}
]
}
}
しかし、それがgrailsに送信されるとき、パラメータを出力するときにこれを取得しています
[lob[TESTING][4][value]:5,
lob[TESTING][3][name]:fourtytwo,
lob[TESTING][6][name]:derp,
lob[TESTING][5][name]:why,
lob[TESTING][3][value]:4,
lob[TESTING][1][value]:2,
lob[TESTING][2][value]:3,
lob[TESTING][5][value]:6,
lob[TESTING][1][name]:time,
lob[TESTING][0][value]:1,
lob[TESTING][6][value]:7,
lob[TESTING][0][name]:color,
lob[TESTING][7][value]:8,
lob[TESTING][4][name]:owl,
lob[TESTING][7][name]:where,
lob[TESTING][2][name]:jeremy,
action:save,
controller:LOB]
JavaScriptから送信しているデータ:
{
lob: {
TESTING: $form.serializeArray()
}
}
JSON.parseまたはrequest.JSONを使用すると言っている複数のフォーラムを読んでいますが、これらのソリューションは私の問題を修正していないようです。次のようなデータにアクセスできるようにしたい
params.lob.testing.each{ a->
println a
}
それ以上のことをやっていきますが、そういう形でデータにアクセスできたらいいなと思います。Grails2.1とJquery1.7.2を使用しています