在entgo中创建外键时,如何定制外键对应的列?

jyztefdp  于 2023-01-06  发布在  Go
关注(0)|答案(1)|浏览(178)

假设使用以下模式

type Pet struct {
    ent.Schema
}

// Fields of the Pet.
func (Pet) Fields() []ent.Field {
    return []ent.Field{
        field.String("name"),
    }
}

// Edges of the Pet.
func (Pet) Edges() []ent.Edge {
    return []ent.Edge{
        edge.From("owner", User.Type).
            Ref("pets").
            Unique(),
    }
}
type User struct {
    ent.Schema
}

// Fields of the User.
func (User) Fields() []ent.Field {
    return []ent.Field{
        field.Int("age"),
        field.String("name").Unique(),
    }
}

// Edges of the User.
func (User) Edges() []ent.Edge {
    return []ent.Edge{
        edge.
            To("pets", Pet.Type),
    }
}

ent将生成一个外键,如pets_users_pets (user_pets) -> users(id),而id是entgo中默认的主键列。
但是我应该做些什么来创建一个(user_pets) -> users(name)name也是一个唯一的列。

zujrkrfu

zujrkrfu1#

2023年1月4日目前不支持
https://github.com/ent/ent/issues/2549#issuecomment-1129666251

相关问题