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