关于边界
一对多,如用户与宠物
在用户模型
ent/schema/user.go
func (User) Edges() []ent.Edge{
return []ent.edge{
edge.To("pets",Pet.Type),
}
}
在宠物模型
ent/schema/pet.go
func (Pet) Edges() []ent.Edge {
return []ent.Edge{
edge.From("user", User.Type).
Ref("pets").
Unique(),
}
}
补充说明:
- 在上述代码中,To()和Ref()中的内容必须一致。
- 当不使用默认生成的关系字段,需要指定关系字段时
- 只需在子对象中,加上Field()方法即可,如 edge.From("user",User.Type).Ref("pets").Field("user_id").Unique()。
- 新增字段(user_id)