2016-03-12 78 views
0

我目前正在嘗試創建一個使用浮油的表,我很困惑,我錯過了什麼導入,因爲我見過的例子似乎沒有相關的外觀導入在他們中。未解決的符號列 - 斯卡拉斯利克

當前列,問號和O都未解決。 有人能讓我知道我做錯了嗎?

這裏是我的表類:

package com.grimey.tabledefinitions 
import slick.driver.MySQLDriver.api._ 
import com.grimey.staticpage.StaticPage 
import slick.lifted.Tag 
import slick.model.Table 

class StaticPageDef(tag: Tag) extends Table[StaticPage](tag, "static_page") { 
    def id = column[Long]("id", O.PrimaryKey, O.AutoInc) 
    def pageType = column[String]("page_type") 
    def contentHtml = column[String]("content_html") 

    def * = (id.?, pageType, contentHtml) <>(StaticPage, StaticPage.unapply _) 
} 

這裏是我的build.sbt:

name := """grimey-cms""" 

version := "1.0-SNAPSHOT" 

lazy val root = (project in file(".")).enablePlugins(PlayScala) 

scalaVersion := "2.11.8" 

libraryDependencies ++= Seq(
    "mysql" % "mysql-connector-java" % "5.1.38", 
    "com.typesafe.play" %% "play-slick" % "2.0.0", 
    "com.typesafe.play" %% "play-slick-evolutions" % "2.0.0" 
) 

resolvers += "scalaz-bintray" at "http://dl.bintray.com/scalaz/releases" 

fork in run := true 

最後,這裏是我使用表的情況下類:

package com.grimey.staticpage 

import java.time.LocalDateTime 

case class StaticPage(id: Long, htmlContent: String, pageType: String, 
         created: LocalDateTime, updated: LocalDateTime) 

我敢打賭這真的很傻:)

+0

添加以下導入,'slick.driver.MySQLDriver.api._' – 757071

回答

1

O對象來自表格,它將驅動程序改變爲驅動程序。某些驅動程序可能不支持其他人支持的某些列選項。因此,你需要導入特定於您的數據庫中的列選項 - MySQL的在這種情況下:

import slick.driver.MySQLDriver.api._ 
+0

謝謝您的回答。不幸的是,導入沒有任何影響。我仍然在StaticPageDef.scala中的代碼的浮動特定部分得到未解決的錯誤。 – User24061990

+1

你好...刪除其他兩個進口:'import slick.lifted.Tag'和 'import slick.model.Table',你應該全部設置。 :) – bjfletcher

0

您可以檢查有關如何使用Play +油滑+ MySQL的這款全教程:http://pedrorijo.com/blog/play-slick/

或者您可能只需瀏覽代碼:https://github.com/pedrorijo91/play-slick3-steps

+0

嗨,謝謝你的回答。第一個鏈接是我第一個使用的鏈接。請注意,它不顯示列功能來自的任何導入或提及。我發現的其他教程也做了同樣的事情。這就是爲什麼我吞噬了我的驕傲並創造了這個問題。 我不認爲我已經看到特定的github回購,所以我會深入挖掘並希望到達這些光滑的功能\對象來自哪裏的底部:) – User24061990