2015-02-22 15 views
27

Tôi đang thử Slick 3.0.0-RC1 và tôi đang gặp sự cố lạ.không thể tìm thấy kết quả phương pháp trên TableQuery với slick 3.0.0-RC1

Đó là mã của tôi:

import slick.driver.SQLiteDriver.api._ 
import scala.concurrent.ExecutionContext.Implicits.global 
import scala.concurrent.Await 
import scala.concurrent.duration.Duration 

lazy val db = Database.forURL(
    url = "jdbc:sqlite:thebase.db", 
    driver = "org.sqlite.JDBC" 
) 

case class Issue(id: Option[Int], name: String)  

class IssueTable(tag: Tag) extends Table[Issue](tag, "issue"){ 
    def id = column[Int]("issue_id", O.PrimaryKey) 
    def name = column[String]("name") 
    def * = (id.?, name) <> (Issue.tupled, Issue.unapply _) 
} 

val issueQuery = TableQuery[IssueTable] 

Await.result(db.run(issueQuery.result), Duration.Inf) // This does not compile 

Lỗi này là:

"Không thể giải quyết kết quả biểu tượng"

Đọc docs tôi có thể không thực sự hiểu tại sao này nên Thất bại. Am i thiếu cái gì ở đây?

Nghị quyết

szeiger chỉ ra rằng đây có thể là một lỗi trong 'biên dịch trình bày IntelliJ của', và đó là vị trí trên.

+5

gì "biên dịch" có nghĩa là ở đây? Có một lỗi đã biết trong trình biên dịch trình bày của IntelliJ ngăn cản nó tìm ra phương thức. Trình biên dịch Scala thực tế sẽ có thể biên dịch nó. – szeiger

+0

Bạn đang ở ngay trên tiền. Tôi không bao giờ bận tâm để biên dịch với sbt như IDEA đã cho tôi một lỗi. Cảm ơn! – brujoand

+0

IntelliJ quá xấu không hiểu. Tàn tích tất cả mọi thứ khi sử dụng nó cho một dự án lớn, nơi IDE là phải. Đó là kinda toàn bộ điểm - để có được kiểm tra thời gian biên dịch và tự động hoàn thành – kornfridge

Trả lời

10

tôi đã nhấn cùng một vấn đề và đây là những gì tôi đã làm để thoát khỏi nó:

  1. Cập nhật IntelliJ lên phiên bản 14.1.3
  2. đã qua sử dụng Scala Phiên bản plugin 1.5

Phiên bản scala của tôi là 2.11.6

Tôi hy vọng điều này sẽ giúp ai đó có thể chạy vào cùng một vấn đề!

+0

Nâng cấp lên phiên bản Plugin JetBrain Scala mới nhất 1.5.2 đã sửa lỗi này cho tôi – ObjectiveTruth

-4

Bạn có thể thử

val result = db.withSession(implicit session => issueQuery.list) 
0

Đây là vấn đề thường gặp mà tôi thường gặp phải với IntelliJ IDEA.

Nếu sử dụng trình kích hoạt, lệnh - "ý tưởng kích hoạt" đã giúp tôi giải quyết vấn đề.

Nó đã tạo lại các tệp .idea và IdeaProject.iml và sau đó tải lại dự án. Tôi hiện đang sử dụng activator-1.3.4

0

Nếu ai đó đang phải đối mặt với một vấn đề tương tự:

không có phương pháp kết quả trên TableQuery

séc DOUBLE cho dù bạn có import slick.jdbc.PostgresProfile.api._

Các vấn đề liên quan