9

嗨,

我想知道在 Grails 应用程序中创建管理(后端)部分的最佳方法是什么?

我想在 Grails 的“controllers”文件夹中创建一个“Admin”文件夹来放置我所有的管理控制器。但是我是否必须为每个管理控制器手动创建 URL 映射?

我已经使用带有域类genernate-all的命令生成了所有前端 GSP,但知道如何为我的管理部分生成 CRUD(具有相同的域类)。我搞砸了吗?

非常感谢您的提示!

4

3 回答 3

11

我对此的偏好是为管理员提供单独的应用程序。将所有域类粘贴到插件中,并将该插件安装到管理应用程序和消费者应用程序中。

这样,您可以根据自己的喜好调整控制器,而不必担心最终用户会碰到它们。共享服务也可以在域插件中。

您可以在 grails-app/conf 中放入一个名为 BuildConfig.groovy 的特殊文件,您可以在其中指定“本地”插件,例如自动带入类路径的域插件,而无需打包/安装插件。让它超级容易。

于 2009-07-17T00:14:36.627 回答
2

您可以像任何其他控制器一样创建您的管理员控制器,并使用过滤器来确保只有具有管理员权限的登录用户才能访问它们。

于 2009-07-15T20:22:52.983 回答
1

很晚了,但这是一种可能有用的方法,至少对于较小的应用程序(我使用的是 Grails 2.0):

在 conf/UrlMappings.groovy 中:

class UrlMappings {
  static mappings = {
    "/admin/$controller/$action?/$id?"{ constraints { // apply constraints here
      } }
    '/admin' (controller: 'yourMainController', action: 'list')
    '/' (controller: 'public', action:'index')
    // For the PublicController to handle *all* other requests (like /foo/bar/):
    // '/**' (controller: 'public', action:'index')
    "500"(view:'/error')
  }
}

注意如您所见,我没有以任何方式保护它。

于 2012-01-27T14:28:35.410 回答