给定域类:
class Person {
String name
Address address
static embedded = ['address']
}
class Address {
String addressLine1
String addressLine2
String city
String state
String postalCode
String phone
}
建议使用嵌入式域时创建灯具的原因是什么?
我在夹具文件中尝试了什么:
address1(Address) {
addressLine1 = '1444 Palm Ave'
addressLine2 = 'suite 07'
city = 'Kissiammee'
state = 'FL'
postalCode = '34741'
phone = '615-555-1111'
}
person1(Person) {
name = 'Fixture Person'
address = ref('address1')
}
在这种情况下,person1会按预期在表中嵌入address1数据进入DB,但在地址表中也会添加一行。当我通过正在运行的应用程序中的personController创建一个人时,地址行不会被创建,并且我希望我的夹具的工作方式与可能的相似。
这是我试过的猜测。没工作......
person2(Person) {
name = 'Test Person'
address = [
addressLine1 : '222 Boone Ave',
city : 'Boone',
state : 'IA',
postalCode : '50210',
phone : '515-555-1111',
]
}
我的控制器主要是脚手架,有一些小的调整来处理REST json。如果我通过
{
"name":"Rest Fixture person",
"address":{
'addressLine1':'333 Boone Ave',
'city':'Boone',
...
}
}
我按预期获得了嵌入在此人身上的地址,并且根据需要在地址表中没有任何行。所以只是想知道我是否可以使用fixture插件拉出相同的数据设置。