我是grails的新手,我试图删除我得到的所有对象(ArrayList)。
这是获取数据的方法,即:
~Car() {
delete owner;
}
这就是我要做的事情:
def authRequest = User.findAllByExpiresLessThan(currentDate)
这是错误:
if(authRequest){
authRequest.delete()
}
提前致谢。
答案 0 :(得分:2)
authRequest.delete()
会起作用。
当您使用findAllBy
而不是findBy
时,它将返回一个对象数组,而不是一个。在这种情况下,您可以使用"Spread" operator(*.
)将其全部删除:
authRequest*.delete()
答案 1 :(得分:0)
我会使用HQL以原子方式删除所有对象,使用单个(SQL DELETE
)语句
User.executeUpdate('delete User where expires < ?', [currentDate])