首页 > 解决方案 > 如何不将控制器与视图关联?[圣杯]

问题描述

我正在开发一个仅使用第三方 API 并将 Firebase 用作数据存储的 Grails 应用程序。因此,我不想将我的控制器方法与grails-app/views目录中的任何视图相关联。ServletException: could not resolve view in servlet每当任何控制器方法被回调时,我都会得到一个。我应该如何阻止这种情况发生?

标签: javaapigrails

解决方案


在 Groovy 中,如果方法的最后一条语句是隐式返回语句。同样,在 Grails 中,如果您不显式渲染视图,控制器操作方法将期望视图与您的方法名称相同。

考虑到这一点,您可以通过两种方式解决此问题。

  1. 创建一个与方法名称匹配的空视图,其中没有任何内容。

  2. 将一个空字符串渲染为方法中的最后一条语句。

    class SomeController{
    
        def index(){
           // do stuff
           render ""
       }
    }
    

推荐阅读