我目前正在尝试使用Play! Framework 2.2和play-slick (主分支)。在play-slick代码中,我想重写驱动程序定义,以便添加Oracle驱动程序(我使用的是slick扩展)。在Config.Scala of play slick,我刚刚看到/** Extend this to add driver or change driver mapping */ .
我来自遥远的地方(目前正在用Scala阅读编程),所以有很多需要学习的地方。所以我的问题是:
import play.api.db.slick.Config.driver.simple._ --如果我使用的是Oracle驱动程序--我不能使用这个导入,我错了吗?如何使用蛋糕模式来定义隐式会话?非常感谢。等你的建议,我还在家里学习游戏代码:)
发布于 2013-10-29 14:07:50
import MyExtendedConfig.driver._而不是import play.slick.db.api.Config.driver._。顺便说一句,我看到driverByName的类型可能是一个映射,而不是一个函数,这使得它更容易扩展。这不应该中断,但这样做会更容易。self类型的层时,您有一个蛋糕模式:
属性FooComponent{驱动程序: ExtendedDriver =>导入driver.simple._类Foo扩展表Int{//.}}
slick/play-slick中的蛋糕模式有两个用例: 1)如果您有引用其他表的表(如计算机数据库示例中的那样),2)可以控制在什么时候使用哪个数据库,或者如果您使用许多不同的类型。通过使用Config,您实际上并不需要蛋糕模式,只要您只有两个不同的do (一个用于prod,一个用于测试),这就是Config的要点。希望这能回答你的问题,并祝你在Scala阅读编程方面好运(喜欢那本书:)
https://stackoverflow.com/questions/19652804
复制相似问题