ルーズリーフ

公私におよぶ経験値獲得履歴的ななにか。

select multiple などで指定された複数の値を取得する

よく忘れるのでメモメモ。

selectのmultipleなど、配列としてformからpostされた時、
そのフォーム専用のモデルを使わずにデータを取得したい場合。

DynamicForm等のdata()メソッドでは、先頭の1つしか取ってこない為、
リクエストボディからString[]として拾うこと。

//controller内部
Map<String, String[]> formDatas = request().body().asFormUrlEncoded();
String[] names = formDatas.get("name");

もうちょっと調べればやり方ありそうな気もしますが、あれば追々編集ということで。