在grails的某些环境中删除控制器

时间:2013-09-02 07:46:41

标签: grails controller

我做了一些控制器,但他只有测试环境的目的,我想知道是否有一些优雅的方式插入或插入他依赖于环境? ......

具体来说,我必须在测试环境中删除一些数据库表,并且必须来自API,因为它是用于功能测试,所以我必须为此创建控制器/服务。当然,出于安全原因,我不希望在生产环境中安装此控制器:D

感谢您的任何建议!

伊万

1 个答案:

答案 0 :(得分:2)

不确定它是否足够优雅,但您可以在不同于TEST的环境中添加重定向到该控制器的404页面的URL映射:

CONF / UrlMappings.groovy

static mappings = {

    // ...

    if (Environment.current != Environment.TEST) {
        '/testcontrollername'(view: '/404page')
    }
}

可以做的另一件事是在归档构建之前从WAR目录中删除控制器类。只有在使用WAR进行部署时,这才有效。