域Staff
有一个User
。
class Person {
User user
}
class Staff extends Person {
//other properties
}
class User {
String username
String password
}
我知道用户已登录,现在我想通过Staff
登录的User
找到User
。 def createdBy = User.get(springSecurityService.principal.id)
log.info("User id : "+createdBy.id) // it works
def staff = Staff.findByUser(createdBy) //it returns null
方没有保持关系。
我正在实施的代码是:
{{1}}
这不适用于GORM或我遗漏了什么吗?
grails findBy documentation没有任何关于findByDomain()的信息。
答案 0 :(得分:1)
问题是已关闭,因为错误是在插入Staff
并User
时,grails
并未以正确的方式进行。{poor> def createdBy = User.get(springSecurityService.principal.id)
def staff = Staff.findByUser(createdBy)
没有通知我。)
以上代码完美无缺。
Staff
但是,同时实施了另一种以标准方式查找 def createdBy = User.get(springSecurityService.principal.id)
def staff = staffCriteria.get{
user{
idEq(createdBy.id)
}
}
的方法:
{{1}}