首先,我想告诉我,这是一个相当新的grails,也许可能是这个问题似乎很容易,但我花了几个小时的时间。
我试图检查用户他的过期数据是否已过期
Date currentDate = new Date(System.currentTimeMillis())
def authRequest = Authentication.findAllByExpiresLessThan(currentDate)
使用up方法,我可以让列表中的所有用户过期数据已过期。请注意,我正在获取列表
我的问题现在来了,因为如果他的过期数据已过期,我需要将用户的状态更改为REQUESTED =>活性。这就是我不知道如何从我从authRequest请求的数据开始检查grails,因为我可以在调试模式中看到我获得了具有该对象的所有列,但不知道怎么能我加入了另一张桌子
This is table/domain user:
name|surname|status|user_id
bob len REQUESTED asdfwerrg
Marc Marc ACTIVE jryut6u5u
This is table/domain authentication
expires | user_id
2016-04-17 11:38:50 | asdfwerrg
2016-05-10 11:38:50 | asdfwerrg
希望解释没问题,并提前致谢
答案 0 :(得分:1)
您可以使用
def user = User.findAllByUserIdInList(authRequest.userId.toList())
然后
user.each{
it.status = "ACTIVE"
it.save(flush:true)
}
有关详细信息,请参阅http://grails.github.io/grails-doc/2.1.0/ref/Domain%20Classes/findAllBy.html。
由于