Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
字段属性如何影响Grails中的域建模?_Grails_Groovy_Dns - Fatal编程技术网

字段属性如何影响Grails中的域建模?

字段属性如何影响Grails中的域建模?,grails,groovy,dns,Grails,Groovy,Dns,假设我在Grails应用程序中有一个名为Tag的域类 class Tag { String name // line number 1 User user // Line number 2 static constraints = { } static belongsTo = [User, Post] } 在belongsTo关键字的帮助下,我正在创建User和Tag之间的关系。但是我对第2行有疑问,它是用户。现在,将此代码放在myTa

假设我在Grails应用程序中有一个名为
Tag
的域类

class Tag {
    String name // line number 1
    User user  // Line number 2
        static constraints = {
        }
    static belongsTo = [User, Post]
}
belongsTo
关键字的帮助下,我正在创建
User
Tag
之间的关系。但是我对
第2行
有疑问,它是
用户
。现在,将此代码放在my
Tag
类中会以任何方式影响
Tag
User
之间的关系,或者只影响我们在
中提供的
关键字


还有什么工具可以可视化Grails应用程序中任何类之间的关系

belongsTo
具有多个类通常是可疑的,因为这意味着实例将与其他几个域对象处于组合关系中。根据我的经验,只有当一个设置为
null
而另一个设置为空时,它才有用(但是,您可能更喜欢使用
TagUser
TagPost
派生一个
标记
类)。我建议您删除
下面的一个
(可能是Post)

在你的
Post
User
课程中,你可能与
有很多关系。创建关系就足够了,不必在
标记中添加
belongsTo
。使用
belongsTo
的唯一优点是更新或删除
用户
Post
也会层叠并保存
标记

如果您的标签用例是传统的(如stackoverflow上的标签),那么您正试图创建多对多关系(一个用户有多个标签,一个标签有多个用户。post也是如此)。您可以在多对多关系中使用belongsTo来表示谁拥有该关系。阅读以了解这种关系是如何运作的


关于你的最后一个问题,IntelliJ有一个集成的域类依赖关系可视化功能。

belongsTo
有几个类通常是可疑的,因为这意味着实例将与其他几个域对象处于组合关系中。根据我的经验,只有当一个设置为
null
而另一个设置为空时,它才有用(但是,您可能更喜欢使用
TagUser
TagPost
派生一个
标记
类)。我建议您删除
下面的一个
(可能是Post)

在你的
Post
User
课程中,你可能与
有很多关系。创建关系就足够了,不必在
标记中添加
belongsTo
。使用
belongsTo
的唯一优点是更新或删除
用户
Post
也会层叠并保存
标记

如果您的标签用例是传统的(如stackoverflow上的标签),那么您正试图创建多对多关系(一个用户有多个标签,一个标签有多个用户。post也是如此)。您可以在多对多关系中使用belongsTo来表示谁拥有该关系。阅读以了解这种关系是如何运作的


关于你的最后一个问题,IntelliJ有一个集成的域类依赖项可视化功能。

否。如果对象之间存在一对多关系或一对一关系,并且具有很强的依赖性(例如,删除用户应删除其标记),则应使用
belongsTo
。查看以了解以下内容的含义和含义
。否。如果对象之间存在一对多关系或一对一关系(例如,删除用户应删除其标记),则应使用
belongsTo
。查看以了解以下内容的含义和含义