我的应用程序需要在运行时支持多个客户。它们都将显示相同的数据,使用相同的控制器、服务,但具有不同的布局、css 和图像。
我的基本思路如下:
1) 有一个过滤器来验证并在会话中设置一个配置值 2) 我的控制器代码将按照以下方式调用一些东西:render(view:"/${session.userContext}/test/test")
所以对于 customer1,我们将渲染:views/customer1/test/test.gsp
理想情况下,我希望在 /views/customer1/ 目录中拥有所有自定义视图和布局,但站点网格在 /views/layouts 目录中查找布局,但我找不到解决方法。从这个意义上说,解决方案有点笨拙,因为我没有得到我想要的隔离级别。
理想的情况是,如果我可以在运行时设置 grails 渲染方法的根,例如,而不是从视图开始,查看 views/customer1 唉,我不知道如何做到这一点,但他似乎是最聪明的解决方案。
任何帮助将不胜感激。
干杯,
加夫