0

データベースにクエリを実行するためのヘルパー クラスを作成しようとしています。次のようになります。

object Injury {
  def logger =  LoggerFactory.getLogger(getClass)

    def find(teamId: Int = 0) {
        logger.info("teamId in find(): " + teamId)
        teamId match {
            case 0 => findAll
            case n => findById(n)
        }
    }

  def findAll = {
    val results = InjuryDAO.findAll
    results.map(grater[Injury].asObject(_)).toList
  }

  def findById(teamId: Int) = {
    //
  }

}

Injury.find(someId)これで、コントローラーで正しい結果を呼び出してフィールドすることができます。問題は、結果が表示されないことです。そのため、Scala ロジックのどこかが間違っていると思います。Injury.findAllコントローラーから直接呼び出すと、すべてうまくいきます。この場合、0 を渡し、ロガーで検証しましたが、case 0findAll を呼び出す必要がある が適切にトリガーされていません。ここで明らかなエラー?

4

1 に答える 1

1
def find(teamId: Int = 0) {

=メソッドが何も返さない理由を説明しています ( Unit)。

次のようにする必要があります。

def find(teamId: Int = 0) = {
于 2013-09-03T23:15:34.177 に答える