2012-01-14 42 views
0

私は現時点でWebアプリケーションをプログラミングしていますが、送信フォームの値を使用したいのに型の不一致がありますが、型の不一致があります:スカラリフトタイプの不一致?

タイプが一致しません。見つかりました:connectfour.Board =>オプション[INT]必要:

var value=0 
"name=value" #> SHtml.onSubmit(s => asInt(s).foreach(value= _)) & 
// when the form is submitted, process the variable 
"type=submit" #> SHtml.onSubmitUnit(askForHumanMove) 

と私のaskForHumanMove方法:

def askForHumanMove(board: connectfour.Board): Option[Int] = { 
    Some(value)   
} 

希望誰かのことが可能に()=>どれ

私のコードは次のようになりますこのタイプの不一致で私を助けてください。

ありがとうございました!

敬具、 ジョン

答えて

4

それはonSubmitUnitがパラメータとして() => Anyを受け入れるように私には見えます。しかし、あなたは持ち上げられているメソッドを関数Board => Option[Int]に渡しています。これらのタイプは互換性がありません。

onSubmitUnitメソッドを呼び出す時点で、該当するBoardのインスタンスが有効範囲にありますか?もしそうなら、修正は簡単です:

"type=submit" #> SHtml.onSubmitUnit(() => askForHumanMove(board)) 
+0

お返事ありがとうございます!大丈夫、私はレンダリングメソッドでこれを取得しました。 askForHumanMoveメソッドで変数の値を使用するにはどうすればよいですか? – user1137701