我有一个域:MyClass
与 Realm
String a
String b
我有一个测试:
void testRemoveMyClass() {
MyClass x = new MyClass()
x.setId(3)
x.setA("AAA")
x.setB("BBB")
x.save()
if (!MyClass.exists(3)) {
fail "Object does not exist"
}
x.delete()
if (MyClass.exists(3)) {
fail "Object exists"
}
}
第二个“失败”失败。如何通过ID删除该对象?
最佳答案
首先:请勿使用类型化引用,而应使用:
def x = new MyClass()
关于他的主题的很好的阅读:http://blog.springsource.org/2010/07/28/gorm-gotchas-part-3/
您的对象仍然存在,但不应再保留。在测试结束前尝试,而不是第二个
exists()
:def y = MyClass.findById(3)
assert y == null
顺便说一句,您可以通过构造函数中的map轻松创建域对象:
def x = new MyClass(id: 3, a: 'AAA', b: 'BBB')
关于grails - 如何在Grails中的测试中从数据库中删除对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16666684/