Spielen Sie Framework-Routen und vordefinierte Scala-Werte
Ich entwickle eine Anwendung auf Play Framework 2.2. Ich habe eine Routendatei wie diese:
GET /posting/ controllers.posting.BlogController.allPosts()
GET /posting/:number controllers.posting.BlogController.allPosts(number: Int)
Und BlogContriller:
object BlogController extends Controller {
def allPosts(pageNumber:Int = 1, postsPerPage:Int = 10) = Action{
val posts = Post.getLastNPosts(postsPerPage, postsPerPage*(pageNumber-1))
val htmlPosts = new Html(new StringBuilder());
for (post <- posts){
val htmlPost = views.html.posting.post(post.getName, post.getText, post.getDate.toString)
htmlPosts += htmlPost;
}
Ok(views.html.posting.index(htmlPosts))
}
}
Wenn ich versuche, das zu kompilieren, gebe ich einen Fehler:
Error:(14, -1) Play 2 Compiler: C:\...\conf\routes:14: Compilation error[Using different overloaded methods is not allowed. If you are using a single method in combination with default parameters, make sure you declare them all explicitly.]
GET /posting/:number controllers.posting.BlogController.allPosts(number: Int)
Und ich kann nicht verstehen, wie ich das beheben kann. Kann mir jemand helfen?