scala – 为什么Play拒绝表单报告“无法解决方法适用于此类签名
发布时间:2020-12-16 09:07:28  所属栏目:安全  来源:网络整理 
            导读:我有一个非常广泛的形式定义为; case class EditDetail(token: String,placeId: Long,// accessibility privateParking: Option[Boolean],privateParkingType: Option[Int],// 0: internal,1: external,3: street bikeParking: Option[Boolean],valetService
                
                
                
            | 
 我有一个非常广泛的形式定义为; 
  
  
  case class EditDetail(token: String,placeId: Long,// accessibility
                      privateParking: Option[Boolean],privateParkingType: Option[Int],// 0: internal,1: external,3: street
                      bikeParking: Option[Boolean],valetService: Option[Boolean],wheelChairAccess: Option[Boolean],//  facilities
                      cashOnly: Option[Boolean],paymentMeans: Option[List[String]],// comma separated Option[List[String]]s
                      wifi: Option[Int],smoking: Option[Boolean],aircon: Option[Boolean],//  dining
                      dietaryRestrictions: Option[List[String]],mealsServed: Option[List[String]],alcoholChoice: Option[List[String]],outdoorSeating: Option[Boolean],catering: Option[Boolean],//  reservation
                      acceptsReservations: Option[Int] /*,// 0: no,1: yes,2: only groups
                           reservationMethods: Option[List[String]],// <-- the problem area
                           reservationUrl: Option[String],groupSizeMin: Option[Int],groupSizeMax: Option[Int],//  delivery & takeaway
                           delivery: Option[Boolean],minDeliveryAmt: Option[BigDecimal],takeAway: Option[Boolean],// atomosphere
                            musicType: Option[List[String]],ambiance: Option[List[String]],attire: Option[List[String]],surrounding: Option[List[String]],viewPoint: Option[Boolean],goodForKids: Option[Boolean],tv: Option[Boolean],sportsFeatured: Option[List[String]]*/) {
  var place: Place = _
  var user: User = _
}
var editDetailForm = Form(
  mapping(
    "token" -> nonEmptyText,"place_id" -> longNumber,/*ACCESSIBILITY*/
    "private_parking" -> optional(boolean),"private_parking_type" -> optional(number(0,3)),"bike_parking" -> optional(boolean),"valet_service" -> optional(boolean),"wheelchair_access" -> optional(boolean),/*FACILITIES*/
    "cash_only" -> optional(boolean),"payment_means" -> optional(list(text)),"wifi" -> optional(number(0,2)),"smoking" -> optional(boolean),"aircon" -> optional(boolean),//    /*DINING OPTIONS*/
    "dietary_restrictions" -> optional(list(text)),"meals_served" -> optional(list(text)),"alcohol_choice" -> optional(list(text)),"outdoor_seating" -> optional(boolean),"catering" -> optional(boolean),/*RESERVATIONS*/
    "accepts_reservations" -> optional(number)
    //    "reservation_methods" -> optional(list(text)) // <-- problem area
    //    "reservation_url" -> optional(text),//    "group_size_min" -> optional(number(0)),//    "group_size_max" -> optional(number(0)),//    /*DELIVERY & TAKEAWAY*/
    //    "delivery" -> optional(boolean),//    "min_delivery_amount" -> optional(bigDecimal),//    "takeaway" -> optional(boolean),//    /*ATMOSPHERE*/
    //    "music_type" -> optional(list(text)),//    "ambiance" -> optional(list(text)),//    "attire" -> optional(list(text)),//    "surrounding" -> optional(list(text)),//    "view_point" -> optional(boolean),//    "good_for_kids" -> optional(boolean),//    "tv" -> optional(boolean),//    "sports_featured" -> optional(list(text))
  )(EditDetail.apply)(EditDetail.unapply))如果您看到上面的代码并看到标有< - problem area的行,如果我在EditDetail和editDetailForm中取消注释该行,我会得到: 
 为什么? 解决方法
 那是因为你超过了单个元组的最大字段数(18),这是 
 Play doc所说的: 
  
  
  
 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! | 
