scala Play Anorm解析器在模型中抛出UnexpectedNullableFound

时间:2013-06-03 04:29:23

标签: scala playframework anorm

Unexpected UnexpectedNullableFound(post.IMAGE)我收到此错误 在运行程序时,无法识别错误是什么, 如果有人得到相同的错误或知道错误的详细信息,请在此处提及

我的数据库是MySql

我的模型类,

case class Post(id: Pk[Long]= NotAssigned, name:String, image:String)

功能

def listAllPostById():List[Post]={
    DB.withConnection{ implicit connection =>
      val listpost =SQL(
          """
          select * from POST 
          """).on(
              ).as(Post.simple.*)
    listpost     
    }

在应用程序中调用

的方法
def listAllpost()= Action{
    val post:List[Post]=Post.listAllPostById
    Ok(views.html.allPosts.render(post))
   }

和路线

GET  /allPosts    controllers.Application.listAllpost

查看页面

@for(post:Post<- posts){
@post.id
@post.name
@post.image}

简单方法

 val simple ={
    get[Pk[Long]]("post.id") ~
    get[String]("post.name")~
    get[String]("post.image") map {
      case id ~ name ~ image => Post(id,name,image)
    }

错误

Execution exception

[RuntimeException: UnexpectedNullableFound(post.IMAGE)] 

在线出错

   ).as(Post.simple.*)

advnce    thnx ..来自prasanth

1 个答案:

答案 0 :(得分:2)

我认为您的简单方法存在错误。您必须注意您的表名和列名,以及在简单函数中从DB中获取的列的类型。如果您不确定该行是否具有所有列的值,则应使用Option,因此可能会因为数据不可用而捕获此错误。

你应该在简单的函数中确保获取[DATA TYPE]或获取[Option [DATA TYPE]]