grails - 是否可以将范围设置为域类?

标签 grails scope dns

我想知道 grails 是否可以为域类指定范围。

几句话来解释我的应用程序目前是如何工作的:
- 数据库访问是通过使用 SQLJ 的外部“模块”完成的。这个模块是我的 grails 应用程序中的 Controller 用户。
- 用户要求特定信息提交表单 -> 请求提交到外部模块 -> 从数据库中提取的信息 -> 加载到 grails mem DB (HSQL) 中的信息 -> View 中显示的信息。

它在开发环境中运行良好,因为我是唯一使用该应用程序的人。但我想知道应用程序如何处理两个或更多用户。我的意思是,加载到 grails 内存数据库中的信息是否会在用户之间共享?以及如何不与其他用户共享一个用户请求的信息?

在此先感谢您提供有关此主题的任何帮助。

问候。

最佳答案

数据库中的所有数据都在 grails 应用程序的所有用户之间共享。您必须编写自定义查询来限制返回给特定用户的数据。根据您的应用程序,可能类似于以下内容。

class DomainClass1 {
//fields you get from SQLJ go here
int userId
}

将数据放入域类的实例中。
def domInstance=new DomainClass1()
domInstance.loadFromSQLJ() //call the SQLJ module and put it's data in the domain class
domInstance.userId=5 //assign the user associated with this info
domInstance.save()

然后,当您想为 userId 5 的用户显示信息时
def domInstance2=DomainClass1.findByUserId(5)
//Do stuff with domInstance2

关于grails - 是否可以将范围设置为域类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6732877/

相关文章:

grails - Groovy-更改嵌套 map 中字符串的值

javascript - Node JS 如何从函数的回调函数访问全局变量?

dns - 当有 SOCKS 代理时,为什么我的脚本遵循/etc/hosts 但浏览器不遵循?

javascript - Grails javascript 文件重新加载

grails - Groovy LDAP搜索请求

c++ - C++ lambda的机制是什么?

github - GitHub 项目页面的自定义域

docker - 所有外部 DNS 查询都在 docker 容器内失败

Grails 对象关系,其中拥有方没有对其所有者的引用

javascript - Node JS 变量作用域在并发请求的闭包中