Импорт anorm.SQL в IntelliJ IDEA 13

  • Версия для сообщества IntelliJ 13
  • Игровая платформа 2.2
  • Скала 2.10.2

Я импортирую 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, объект и класс.

Когда я запускаю игровой проект, все работает нормально, без ошибок компиляции, поэтому этот Scala синтаксически правильный, но IntelliJ этого не понимает. Я создал файлы идей, вызвав idea из игровой консоли, а также попробовал idea with-sources=yes.

Как заставить IntelliJ Community Editon подобрать anorm.SQL? Что особенного в этом объекте? Я все еще изучаю Scala, так что это может быть проблема со Scala.


person Arthur    schedule 03.12.2013    source источник


Ответы (1)


SQL — это метод, определенный в объекте пакета anorm. Поэтому, когда вы import anorm._, вы также импортируете весь пакет вместе с объектом пакета. На самом деле я понятия не имею, почему Idea не понимает этого. Но если вы заглянете в исходники объектов пакета, то увидите, что метод SQL — это всего лишь оболочка для anorm.Sql.sql(inSql: String).

В качестве обходного пути вы можете попробовать импортировать anorm.Sql._ и использовать sql("select 1") вместо SQL("select 1").

person serejja    schedule 04.12.2013