Documentation
¶
Index ¶
- type Builder
- func (b *Builder) Annotations(annotations ...schema.Annotation) *Builder
- func (b *Builder) Descriptor() *Descriptor
- func (b *Builder) Edges(edges ...string) *Builder
- func (b *Builder) Fields(fields ...string) *Builder
- func (b *Builder) StorageKey(key string) *Builder
- func (b *Builder) Unique() *Builder
- type Descriptor
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Builder ¶
type Builder struct {
// contains filtered or unexported fields
}
Builder for indexes on vertex columns and edges in the graph.
func Edges ¶
Edges creates an index on the given vertex edge fields. Note that indexes are implemented only for SQL dialects, and does not support gremlin.
func (T) Indexes() []ent.Index {
// Unique index of field under 2 edges.
index.Fields("name").
Edges("parent", "type").
Unique(),
}
func Fields ¶
Fields creates an index on the given vertex fields. Note that indexes are implemented only for SQL dialects, and does not support gremlin.
func (T) Indexes() []ent.Index {
// Unique index on 2 fields.
index.Fields("first", "last").
Unique(),
// Unique index of field under specific edge.
index.Fields("name").
Edges("parent").
Unique(),
}
func (*Builder) Annotations ¶ added in v0.9.0
func (b *Builder) Annotations(annotations ...schema.Annotation) *Builder
Annotations adds a list of annotations to the index object to be used by codegen extensions.
func (T) Indexes() []ent.Index {
// Partial index on name where the entity is not deleted.
index.Fields("name").
Annotations(entsql.Prefix(100))
}
func (*Builder) Descriptor ¶
func (b *Builder) Descriptor() *Descriptor
Descriptor implements the ent.Descriptor interface.
func (*Builder) Edges ¶
Edges sets the fields index to be unique under the set of edges (sub-graph). For example:
func (T) Indexes() []ent.Index {
// Unique "name" field under the "parent" edge.
index.Fields("name").
Edges("parent").
Unique(),
}
func (*Builder) Fields ¶
Fields sets the fields of the index.
func (T) Indexes() []ent.Index {
// Unique "name" and "age" fields under the "parent" edge.
index.Edges("parent").
Fields("name", "age").
Unique(),
}
func (*Builder) StorageKey ¶
StorageKey sets the storage key of the index. In SQL dialects, it's the index name.
type Descriptor ¶
type Descriptor struct {
Unique bool // unique index.
Edges []string // edge columns.
Fields []string // field columns.
StorageKey string // custom index name.
Annotations []schema.Annotation // index annotations.
}
A Descriptor for index configuration.