播放2个模块:如何在没有紧耦合的情况下添加路由?

时间:2012-06-28 12:08:59

标签: playframework playframework-2.0

我正在开发一个Play 2 module,它会公开一些网址,并且我想知道如何将这些网址“提供”给托管我模块的Play应用程序。

示例:假设我的模块(名为store)实现了文档存储库,提供(以及其他)URL document/<id>以读取标识为{{1}的文档}。根据其需要,使用此模块的应用程序可能会在<id>下或http://example.org/media/document/<id>下或其他内容中公开此网址。

问题:模块如何在不对其进行硬编码的情况下将URL(路由)公开给其包含的应用程序?

注意:我来自Django并且正在寻找类似于Django URLconfs的机制。

3 个答案:

答案 0 :(得分:3)

您可能会询问HTTP routing

请注意,您需要在主conf/routes文件中放置路由规则。它应该在Play的版本2.1中更改。

编辑:

检查sample of SecureSocial(还有Scala版本)的示例,检查conf/routes

中如何表示到模块的路由

答案 1 :(得分:3)

2.1现在支持此功能,请参阅release notes中的“允许对项目进行更多模块化”一节。好消息!

答案 2 :(得分:2)

如果我不是你想要基于某些参数重定向。那么你可以形成通用的控制器,你可以使用

return redirect(routes.Application.XYZ());

重定向到您想要的位置。

相关问题