2
在我的Play應用中,當我使用反向路由來生成鏈接時,參數中的正斜槓正在逃脫,我寧願他們不是。防止在反向路線中跳過斜線
例如:
<a href="@{Application.page('about/contact')}">Contact Us</a>
產生一個工作環節,但需要你/about%2Fcontact.html
而非/about/contact.html
。 (在地址欄輸入/about/contact.html
也進入到正確的地方。)
我這樣做是因爲我只得到了做什麼有趣的事,其餘的基本上都是靜態的幾頁 - 他們只使用基本模板特徵(extends
,include
,get
,set
)。由於爲每個控制器創建單獨的控制器和操作都是過度的,我已經設置了一個單獨的操作來處理所有這些操作。
public class Application extends Controller {
public static void page(String path) {
render("/static/" + path + ".html");
}
}
一個途徑處理:
GET /{<.+>path}.html Application.page
任何想法,我可以改變周圍的事物,這樣的斜線不被編碼?
我不知道理解,但你爲什麼不只是把鏈接到靜態頁面中XXX? – mandubian
我曾嘗試查看RouteArgs如何配置的源代碼,但我沒有看到任何可覆蓋的方式,除非您更改Play的來源並將其更改爲所有反向路由。 – Codemwnci