暗黙の変換の問題の解決策を見つけることができませんでしたが、scala.util.Random.shuffle
を使用した従来の洗練された構文を使用した回避策を見つけました。 :
def randomByBlahAndDate(blah: Blah, newerThan: LocalDate)(implicit s: Session): Option[Photo] = {
val photos = Query(Photos).where(_.imgDate > newerThan).where(_.blah === blah).run
val r = new scala.util.Random(scala.compat.Platform.currentTime)
r.shuffle(photos).headOption
}
MySQLのrand()
を使用した場合と比較して効率がよくわかりません 、ただし、これは当面は機能します。