kweb の router では KVar を意識しよう
kweb の router においては、
path("/entry/{id}") {params ->
val id = params["id"]!!.value
val entry = entryRepository.findById(id)
div().text(entry.title)
}
のように書きたくなりがちだが、同一パスで path variable のみが変化した場合は KVar の変化しかおきなくて、path の callback のみが呼ばれるわけではない。
なので、以下の様に書く必要がある。
path("/entry/{id}") {params ->
render(params["id"]!!) { id ->
val entry = entryRepository.findById(id)
div().text(entry.title)
}
}
Published: 2022-11-24(Thu) 22:33