我正在使用 mirage 设置前端模拟 graphql 服务器。我遇到一个奇怪的问题,除非它在数组中,否则我无法使用嵌套数据为数据库播种。
我想要的架构如下:
type PersonId {
id_: String!
}
type Name {
first_name: String
last_name: String
middle_name: String
}
type Person {
id: PersonId!
name: Name!
}
每个人都由一个 id 对象和一个 name 对象组成。
我尝试了几种不同的方法来为我的数据库播种
seeds(server) {
const name = server.schema.create('Name', { first_name: 'Joe' });
server.schema.create('Person', {
name: {name},
});
},
我也试过
seeds(server) {
server.schema.create('Person', {
name: {first_name: 'Joe'},
});
},
如果我更改我的架构,以便 Person 上的 name 字段是一个数组
type Person {
id: PersonId!
name: [Name!]
}
我可以为我的数据库播种:
seeds(server) {
const name = server.schema.create('Name', { first_name: 'Joe' });
server.schema.create('Person', {
name: [name],
});
},
但是,这不是所需的架构。我真的很想弄清楚为什么我不能用 Name 对象为我的数据库播种。