我有以下域名:用户,角色,公司。用户和角色具有m:n关系,公司对用户具有1:m,用户对公司为1:1。我对用户域的定义有疑问。这是:
class User {
static hasMany = [authorities: Role ]
static belongsTo = [ Role , Company ]
}
我想从用户访问该公司,以便user.company将给我指定他所在的公司。不允许进行此修改:
static belongsTo = [ Role , company: Company ]
这是错误:
Unexpected node type: EXPR found when expecting type: LABELED_ARG at line: 9 column: 41. File: /Users/alfred/Applications/grails_projects/extramile/grails-app/domain/fbm/extramile/User.groovy @ line 9, column 41.
请注意,这也不是一个选项:
static belongsTo = [ role: Role , company: Company ]
由于用户角色具有m:n(也已由'authority'变量指定)。
还有其他解决方法吗?感谢。
答案 0 :(得分:0)
如果我理解正确,这应该有效:
class User {
static hasMany = [authorities: Role ]
static belongsTo = [ Role , Company ]
Company company
}
我不禁认为您的用户属于公司而不是相反,即删除公司会删除该公司中的所有用户。无论如何,我不知道你的域名所以我会闭嘴!