方法的缺少参数在滑动中不适用

时间:2018-12-26 15:22:17

标签: scala slick

我正在使用Scala和Slick开发应用程序。我有一个名为CarAdvertisement的表,其中有一个模型

case class CarAdvertisementModel(id: Int, title: String, fuel: String, price: Int, isNew: Boolean, mileage: Option[Int], firstRegistration : Option[LocalDate])

我正在尝试使用平滑声明我的架构。我的代码如下

  private class CarAdvertisement(tag: Tag) extends Table[CarAdvertisementModel](tag, "CAR_ADVERTISEMENT") {

    def id = column[Int]("id", O.PrimaryKey, O.AutoInc)

    def title = column[String]("title")

    def fuel = column[String]("fuel")

    def price = column[Int]("price")

    def isNew = column[Boolean]("isNew")

    def mileage = column[Option[Int]]("mileage")

    def firstRegistration = column[Option[LocalDate]]("firstRegistration")

    def * = (id, title, fuel, price, isNew, mileage,firstRegistration) <> ((CarAdvertisementModel.apply _).tupled, CarAdvertisementModel.unapply)
  }

但是最后一行

CarAdvertisementModel.unapply)

给我一​​个错误

Missing arguments for method unapply(CarAdvertisementModel)

您能告诉我我在这里缺少什么吗?

1 个答案:

答案 0 :(得分:0)

您确定没有类似

的错误
  

找不到参数tt的隐式值:   slick.ast.TypedType [Option [java.time.LocalDate]]   
def firstRegistration = columnOption [LocalDate]

如果有一个,请尝试在代码中添加类似的内容

public class LoginViewModel
{
    [Required]        
    public string Username { get; set; }

    [Required]
    [DataType(DataType.Password)]
    public string Password { get; set; }

    [Display(Name = "Remember me?")]
    public bool RememberMe { get; set; }
}

或者您可以尝试将Slick的最新代码与合并的PR #1349 Support java time一起使用。不幸的是,AFAIK仍然没有正式发布这些更改。