3

ファイルのアップロードと追加の入力フィールドを含む Play 2.1.0 フォームで問題が発生しました。私が使う

def uploadTaxonomy() = Action(parse.multipartFormData) {
    implicit request =>
      request.body.file("xml").map { file =>
        val xml = scala.io.Source.fromFile(file.ref.file).mkString
        taxonomyForm.bindFromRequest().fold(
          formWithErrors => BadRequest(views.html.index(formWithErrors)),
          result => {
            Taxonomies.create(result._1, xml)
            Redirect(routes.Application.index())
          }
        )
      }.getOrElse {
        Redirect(routes.Application.index())
      }
  }

私のフォームはこれです:

val taxonomyForm = Form(
  tuple(
    "label" -> text,
    "xml" -> text
  )
)

問題は、bindFromRequest()常に失敗することです (不正な要求がクライアントに返されます)。

問題がどこにあるのか、誰にも分かりますか?

注:アップロード フィールドでファイルが選択されていない場合に発生するバグが 2.1.0にあることは承知しています。しかし、それは関連していないようです。

4

1 に答える 1

2

私の知る限りxml、リクエスト本文から直接取得するため、フォーム定義の一部であってはなりません。

于 2013-03-05T23:30:15.623 に答える