2

Google app Engine 用の slim3 MVC フレームワークを使用してマルチパート フォームを送信するにはどうすればよいですか?

例:

フォーム.jsp :

<form enctype="multipart/form-data">
    <input type=file name='filename'/>
    <input type='text' name='title'/>
</form>

コントローラー/アクション:

request.getParameter("title");

動作していません。enctype が multipart でない場合にのみ機能します。

私に何ができる?

私は使用しようとしました

MultipartRequest req = new MultipartRequest(request, "."); 

クラッシュするだけです。

4

1 に答える 1

0

enctype="multipart/form-data"を使用すると、 getParameterを使用してデータを取得しようとすると null 値が取得されます。具体的な理由は覚えていませんが、そのように機能するため、実装の問題ではありません.

Slim3 を使用する 1 つの解決策は、getParameterの代わりにgetAttributeを使用することです。この場合、入力の 1 つに関連付けられた複数の値を取得する必要がある場合 (たとえば、フォームを送信していて、チェックボックスのグループがある場合)、名前の末尾にArrayという単語を追加できます。フォームのチェックボックス; このように、属性を取得すると、slim3 はそれを自動的に文字列の配列に変換します。

この情報は、slim3 のドキュメントで確認できます。

これが役に立てば幸いです。

さようなら。

于 2014-07-23T08:39:40.757 に答える