如果我有一個類似http://localhost/Test/edit/ {id}的網址,我希望將{id}轉換爲參數而不是URL路徑部分。這是正確的方式來處理像Lift的RESTful URL嗎?
是否通過創建一個帶有RewriteRequest的菜單來實現它的最佳方式?因爲我發現它有點樣板,如果我有像這樣的很多網址模式。
val menu = Menu(new Loc[Unit] {
override def name = "Test"
override def text = "Test"
override def link = (List ("Test"), true)
override def params = Nil
override def defaultValue = Full(())
def isTarget (path: ParsePath) = path match {
case ParsePath (List("Test", "edit", id), _, _, _) => true
case _ => false
}
override def rewrite = Full (NamedPF("Test") {
case RewriteRequest (path, _, _) if isTarget(path) =>
RewriteResponse(List("Test", "edit"),
Map("id" -> "1024")) ->()
})
})
問題是,如果我在webapp/Test下有一個名爲edit.html的模板,這是我用來編輯項目的模板。 和我有類似下面的菜單實例: 菜單(LOC(「測試」,列表(「測試」) - >真,「測試」)) 它只會匹配的網址,如http://本地主機/測試/編輯,而不是像http:// localhost/Test/edit/1 – 2010-01-10 05:14:19