【发布时间】:2014-04-15 13:34:55
【问题描述】:
我想在 Play (Scala) 中进行表单验证,我已经这样做了几次,但这次它显示错误.. 错误说:
重载的方法值 [apply] 不能应用于 (play.api.data.Mapping[models.PIdetail])
型号:
package models
import java.util.Date
import play.api.libs.json._
import play.api.libs.functional.syntax._
import anorm._
import anorm.SqlParser._
import play.api.db.DB
import play.api.Play.current
import models._
case class Purchase_Invoice(supplier_id: String, paid_to_num: String, staff_id: String, paid_to_name: String, staff_name: String, paid_to_addr: String, PI_date: Date, PI_due_date: Date, payment: String, purchase_invoice_items: List[PIdetail], other: String, additional_note: String, terms_and_cond: String)
case class PIdetail(RI_id: Int, PO_id: String, product_id: String, description: String, qty: Int, total: String)
case class RIheader_PI(id_counter: Long, date_RI: Date, staff_id: String, status: Int)
控制器:
package controllers
import play.api._
import play.api.Logger
import play.api.mvc._
import play.api.data._
import play.api.data.Forms._
import play.api.data.format.Formats._
import play.api.mvc.Flash
import play.api.libs.json.Json
import play.api.libs.json._
import models._
object PurchaseInvoices extends Controller {
val submitPIForm = Form(
mapping(
"supplier_id" -> text,
"paid_to_num" -> text,
"staff_id" -> text,
"paid_to_name" -> text,
"staff_name" -> text,
"paid_to_addr" -> text,
"PI_date" -> date,
"PI_due_date" -> date,
"payment" -> text,
"purchase_invoice_items" -> list(
mapping(
"RI_id" -> number,
"PO_id" -> text,
"product_id" -> text,
"description" -> text,
"qty" -> number,
"total" -> text
)(PIdetail.apply)(PIdetail.unapply)
),
"other" -> text,
"additional_note" -> text,
"terms_and_cond" -> text
)(Purchase_Invoice.apply)(Purchase_Invoice.unapply)
)
...................... Some codes
...................... Some codes
}
真的需要你们的帮助..谢谢之前.. ^^
【问题讨论】:
-
嗯看不出这里发布的东西有什么问题..
-
我同意,我将您的代码复制到 Eclipse 中的一个测试项目中,并且没有出现编译错误。如果您使用的是 Eclipse,请尝试清理项目。如果仍然有错误,请将整个代码集发布到 github 或其他地方。通常,如果您的 apply 或 unapply 参数格式错误,您会收到“apply”错误。
-
我正在使用 Sublime Text 2.. 我也清除了浏览器缓存,但仍然无法正常工作.. 嗯.. 即使我将其他表单验证放入此对象 PurchaseInvoices,它也会显示相同的错误,但不是在他们自己的班级里..困惑..@.@
标签: validation scala playframework