scalaquery问题没有隐式会话

时间:2011-09-19 09:30:40

标签: scala scalaquery

这是我想要执行的scalaquery查询,

...
def generateFares(scheduleId:NamedColumn[Int], toCityId:NamedColumn[Int], fromCityId:NamedColumn[Int]):List[(String,Int,String)] = {
      var list:List[(String,Int,String)] = Nil;
      val q = for {
        tf <- ticketingDB.ticketFares if (( tf.scheduleId is scheduleId ) && ( tf.fromCityId is fromCityId ) && ( tf.toCityId is toCityId ))
        tft <- ticketingDB.ticketFareType if tft.id is tf._7
      }{
        list = (tft._2, tf._5, tf._6)::list
      }
      list
    }
...

在此连接中,我收到编译错误:

 could not find implicit value for parameter session: org.scalaquery.session.Session

在第二个电话中。 (tft&lt;-ticketingDB)

我无法理解scalaquery的这种行为。

ps:我可以保证在withSession块中调用该方法。

请帮我调试并创建无错连接。

1 个答案:

答案 0 :(得分:14)

抱歉,我将解决方案发布为评论,

我自己想出了答案。你应该导入threadLocalSession来获取会话对象。

import org.scalaquery.session.Database.threadLocalSession