2

我做了一些控制器,但他只在测试环境中有目的,我想知道是否有一些优雅的方法可以根据环境插入或关闭他?...

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

感谢您的任何建议!

伊万

4

1 回答 1

2

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

conf/UrlMappings.groovy

static mappings = {

    // ...

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

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

于 2013-09-02T09:22:17.867 回答