让controller支持子目录有意义吗?

1 view
Skip to first unread message

Alex wang

unread,
Nov 6, 2009, 7:27:44 PM11/6/09
to grail...@googlegroups.com, idea. wang
在官方bug列表里看到一个哥们提了一个意见,希望Grails能够让controller支持子目录,效果如下:


\grails-app\controllers\SiteController.groovy -> http://localhost:8080/sample/site
\grails-app\controllers\admin\UserController.groovy -> http://localhost:8080/sample/admin/user
\grails-app\controllers\admin\RoleController.groovy -> http://localhost:8080/sample/admin/role

对应的view页面结构如下:

\grails-app\views\admin\user\show.gsp


大家觉得有这个需要吗? 我个人觉得虽然层次支持更多了,但是会感觉复杂点了,而且和package之间有说不清的牵扯,不过这个哥们坚持这一点,说Rails已经实现了这一点。


原文见这里 : http://jira.codehaus.org/browse/GRAILS-1243


Ali Yang

unread,
Nov 6, 2009, 7:52:35 PM11/6/09
to grail...@googlegroups.com
我觉得加上还是不错的,但是和 package 挂上钩就不好了

2009/11/7 Alex wang <idea...@gmail.com>

--
Ali Yang
----------------------------------------
Blog: http://ssailyang.javaeye.com
Twitter: https://twitter.com/aliyang
MSN: yang_...@hotmail.com
QQ: 407131746
----------------------------------------

Tigerf

unread,
Nov 6, 2009, 8:05:29 PM11/6/09
to grail...@googlegroups.com
我觉得如果要实现就应该跟package挂钩,否则controller怎么分目录放。
要是不想用package,其实手工修改UrlMappings.groovy就接近了,只是view不能分出目录。

Thanks & Best Regards
Tigerf


2009/11/7 Ali Yang <yang...@gmail.com>

Alex wang

unread,
Nov 6, 2009, 8:08:14 PM11/6/09
to grail...@googlegroups.com
有一些人投票支持这个功能,估计是因为rails支持了他们这帮家伙心里不平衡呢 :)

我个人觉得无所谓,功能强大了更好,最多你可以不用,想用的时候又有的用也挺好。


2009/11/7 Tigerf <tig...@gmail.com>

clt

unread,
Nov 6, 2009, 8:13:14 PM11/6/09
to grail...@googlegroups.com
On Sat, 07 Nov 2009 09:08:14 +0800, Alex wang <idea...@gmail.com> wrote:

觉得带上这个功能挺好的, 功能比较多的时候就可以按 模块划分 ,
而不是按domain 划分。


> 有一些人投票支持这个功能,估计是因为rails支持了他们这帮家伙心里不平衡呢
> :)
>
> 我个人觉得无所谓,功能强大了更好,最多你可以不用,想用的时候又有的用也挺好。
>
>


--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

rain

unread,
Nov 7, 2009, 11:18:52 PM11/7/09
to Grails联盟-GrailsUnion
这个问题我也遇到了,实际有这样的需求,比如
UserController
admin/UserController
他们在UrlMapping中的controller name都是user,但是不一样了。如果action一样那就只能按顺序查找到了。
所以我也希望支持namespace,这个在模块化开发中就会遇到这个问题。
Struts2早就支持namespace了,实现起来应该不难了。需要在UrlMapping中增加namespace,并作相应的处理了。
另外一个问题是view也同样有这样的需求,尤其是domain很多的时候。我后来写了个插件,是可以支持的。

在controller中,加入:
static namespace = "/admin"

这样,就会对应到/views/admin/user下面。


On 11月7日, 上午8时27分, Alex wang <idea.w...@gmail.com> wrote:
> 在官方bug列表里看到一个哥们提了一个意见,希望Grails能够让controller支持子目录,效果如下:
>
> \grails-app\controllers\SiteController.groovy ->http://localhost:8080/sample/site

> \grails-app\controllers\admin\UserController.groovy ->http://localhost:8080/sample/admin/user

> \grails-app\controllers\admin\RoleController.groovy ->http://localhost:8080/sample/admin/role
>

Tigerf

unread,
Nov 7, 2009, 11:30:54 PM11/7/09
to grail...@googlegroups.com
应该把你的插件发给grails团队,他们也许能以你代码为基础实现这个功能呢。


Thanks & Best Regards
Tigerf


2009/11/8 rain <rain...@gmail.com>
Reply all
Reply to author
Forward
0 new messages