我正在导入anorm._并在我的对象中使用SQL。该对象开始如下:
package controllers
import play.api.mvc._
import play.api.db.DB
import play.api.Play.current
import anorm._
object Walks extends Controller {
val futureWalksSql = SQL("SELECT * FROM walks where evt_date > now()")
IntelliJ无法解析符号SQL。如果我按Ctrl + Enter,anorm.
之后没有SQL选项,尽管有.Sql特征,对象和类。
当我运行play项目时,一切正常,没有编译错误,所以这个Scala在语法上是正确的,但IntelliJ没有选择它。我通过在播放控制台中调用idea
创建了构思文件,我也尝试了idea with-sources=yes
。
如何让IntelliJ Community Editon获取anorm.SQL?这个对象有什么特别之处?我还在学习Scala,所以这可能是Scala问题。
答案 0 :(得分:1)
SQL是在包对象anorm
中定义的方法。因此,当您import anorm._
时,也会使用包对象导入整个包。我实际上不知道为什么Idea不接受这个。但是,如果查看包对象源,可以看到SQL
方法只是anorm.Sql.sql(inSql: String)
上的包装器。
作为解决方法,您可以尝试导入anorm.Sql._
并使用sql("select 1")
代替SQL("select 1")