ent

package
v1.6.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 21, 2021 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Operation types.
	OpCreate    = ent.OpCreate
	OpDelete    = ent.OpDelete
	OpDeleteOne = ent.OpDeleteOne
	OpUpdate    = ent.OpUpdate
	OpUpdateOne = ent.OpUpdateOne

	// Node types.
	TypeCategory = "Category"
	TypeProduct  = "Product"
	TypeVariant  = "Variant"
)

Variables

This section is empty.

Functions

func IsConstraintError

func IsConstraintError(err error) bool

IsConstraintError returns a boolean indicating whether the error is a constraint failure.

func IsNotFound

func IsNotFound(err error) bool

IsNotFound returns a boolean indicating whether the error is a not found error.

func IsNotLoaded

func IsNotLoaded(err error) bool

IsNotLoaded returns a boolean indicating whether the error is a not loaded error.

func IsNotSingular

func IsNotSingular(err error) bool

IsNotSingular returns a boolean indicating whether the error is a not singular error.

func IsValidationError

func IsValidationError(err error) bool

IsValidationError returns a boolean indicating whether the error is a validaton error.

func MaskNotFound

func MaskNotFound(err error) error

MaskNotFound masks not found error.

func NewContext

func NewContext(parent context.Context, c *Client) context.Context

NewContext returns a new context with the given Client attached.

func NewTxContext

func NewTxContext(parent context.Context, tx *Tx) context.Context

NewTxContext returns a new context with the given Tx attached.

Types

type AggregateFunc

type AggregateFunc func(*sql.Selector, func(string) bool) string

AggregateFunc applies an aggregation step on the group-by traversal/selector.

func As

As is a pseudo aggregation function for renaming another other functions with custom names. For example:

GroupBy(field1, field2).
Aggregate(ent.As(ent.Sum(field1), "sum_field1"), (ent.As(ent.Sum(field2), "sum_field2")).
Scan(ctx, &v)

func Count

func Count() AggregateFunc

Count applies the "count" aggregation function on each group.

func Max

func Max(field string) AggregateFunc

Max applies the "max" aggregation function on the given field of each group.

func Mean

func Mean(field string) AggregateFunc

Mean applies the "mean" aggregation function on the given field of each group.

func Min

func Min(field string) AggregateFunc

Min applies the "min" aggregation function on the given field of each group.

func Sum

func Sum(field string) AggregateFunc

Sum applies the "sum" aggregation function on the given field of each group.

type Categories

type Categories []*Category

Categories is a parsable slice of Category.

type Category

type Category struct {

	// ID of the ent.
	ID uuid.UUID `json:"id,omitempty"`
	// Name holds the value of the "name" field.
	Name string `json:"name,omitempty"`
	// contains filtered or unexported fields
}

Category is the model entity for the Category schema.

func (*Category) String

func (c *Category) String() string

String implements the fmt.Stringer.

func (*Category) Unwrap

func (c *Category) Unwrap() *Category

Unwrap unwraps the Category entity that was returned from a transaction after it was closed, so that all future queries will be executed through the driver which created the transaction.

func (*Category) Update

func (c *Category) Update() *CategoryUpdateOne

Update returns a builder for updating this Category. Note that you need to call Category.Unwrap() before calling this method if this Category was returned from a transaction, and the transaction was committed or rolled back.

type CategoryClient

type CategoryClient struct {
	// contains filtered or unexported fields
}

CategoryClient is a client for the Category schema.

func NewCategoryClient

func NewCategoryClient(c config) *CategoryClient

NewCategoryClient returns a client for the Category from the given config.

func (*CategoryClient) Create

func (c *CategoryClient) Create() *CategoryCreate

Create returns a create builder for Category.

func (*CategoryClient) CreateBulk

func (c *CategoryClient) CreateBulk(builders ...*CategoryCreate) *CategoryCreateBulk

CreateBulk returns a builder for creating a bulk of Category entities.

func (*CategoryClient) Delete

func (c *CategoryClient) Delete() *CategoryDelete

Delete returns a delete builder for Category.

func (*CategoryClient) DeleteOne

func (c *CategoryClient) DeleteOne(ca *Category) *CategoryDeleteOne

DeleteOne returns a delete builder for the given entity.

func (*CategoryClient) DeleteOneID

func (c *CategoryClient) DeleteOneID(id uuid.UUID) *CategoryDeleteOne

DeleteOneID returns a delete builder for the given id.

func (*CategoryClient) Get

func (c *CategoryClient) Get(ctx context.Context, id uuid.UUID) (*Category, error)

Get returns a Category entity by its id.

func (*CategoryClient) GetX

func (c *CategoryClient) GetX(ctx context.Context, id uuid.UUID) *Category

GetX is like Get, but panics if an error occurs.

func (*CategoryClient) Hooks

func (c *CategoryClient) Hooks() []Hook

Hooks returns the client hooks.

func (*CategoryClient) Query

func (c *CategoryClient) Query() *CategoryQuery

Query returns a query builder for Category.

func (*CategoryClient) Update

func (c *CategoryClient) Update() *CategoryUpdate

Update returns an update builder for Category.

func (*CategoryClient) UpdateOne

func (c *CategoryClient) UpdateOne(ca *Category) *CategoryUpdateOne

UpdateOne returns an update builder for the given entity.

func (*CategoryClient) UpdateOneID

func (c *CategoryClient) UpdateOneID(id uuid.UUID) *CategoryUpdateOne

UpdateOneID returns an update builder for the given id.

func (*CategoryClient) Use

func (c *CategoryClient) Use(hooks ...Hook)

Use adds a list of mutation hooks to the hooks stack. A call to `Use(f, g, h)` equals to `category.Hooks(f(g(h())))`.

type CategoryCreate

type CategoryCreate struct {
	// contains filtered or unexported fields
}

CategoryCreate is the builder for creating a Category entity.

func (*CategoryCreate) Mutation

func (cc *CategoryCreate) Mutation() *CategoryMutation

Mutation returns the CategoryMutation object of the builder.

func (*CategoryCreate) Save

func (cc *CategoryCreate) Save(ctx context.Context) (*Category, error)

Save creates the Category in the database.

func (*CategoryCreate) SaveX

func (cc *CategoryCreate) SaveX(ctx context.Context) *Category

SaveX calls Save and panics if Save returns an error.

func (*CategoryCreate) SetID

func (cc *CategoryCreate) SetID(u uuid.UUID) *CategoryCreate

SetID sets the "id" field.

func (*CategoryCreate) SetName

func (cc *CategoryCreate) SetName(s string) *CategoryCreate

SetName sets the "name" field.

type CategoryCreateBulk

type CategoryCreateBulk struct {
	// contains filtered or unexported fields
}

CategoryCreateBulk is the builder for creating many Category entities in bulk.

func (*CategoryCreateBulk) Save

func (ccb *CategoryCreateBulk) Save(ctx context.Context) ([]*Category, error)

Save creates the Category entities in the database.

func (*CategoryCreateBulk) SaveX

func (ccb *CategoryCreateBulk) SaveX(ctx context.Context) []*Category

SaveX is like Save, but panics if an error occurs.

type CategoryDelete

type CategoryDelete struct {
	// contains filtered or unexported fields
}

CategoryDelete is the builder for deleting a Category entity.

func (*CategoryDelete) Exec

func (cd *CategoryDelete) Exec(ctx context.Context) (int, error)

Exec executes the deletion query and returns how many vertices were deleted.

func (*CategoryDelete) ExecX

func (cd *CategoryDelete) ExecX(ctx context.Context) int

ExecX is like Exec, but panics if an error occurs.

func (*CategoryDelete) Where

func (cd *CategoryDelete) Where(ps ...predicate.Category) *CategoryDelete

Where adds a new predicate to the CategoryDelete builder.

type CategoryDeleteOne

type CategoryDeleteOne struct {
	// contains filtered or unexported fields
}

CategoryDeleteOne is the builder for deleting a single Category entity.

func (*CategoryDeleteOne) Exec

func (cdo *CategoryDeleteOne) Exec(ctx context.Context) error

Exec executes the deletion query.

func (*CategoryDeleteOne) ExecX

func (cdo *CategoryDeleteOne) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

type CategoryGroupBy

type CategoryGroupBy struct {
	// contains filtered or unexported fields
}

CategoryGroupBy is the group-by builder for Category entities.

func (*CategoryGroupBy) Aggregate

func (cgb *CategoryGroupBy) Aggregate(fns ...AggregateFunc) *CategoryGroupBy

Aggregate adds the given aggregation functions to the group-by query.

func (*CategoryGroupBy) Bool

func (cgb *CategoryGroupBy) Bool(ctx context.Context) (_ bool, err error)

Bool returns a single bool from a group-by query. It is only allowed when executing a group-by query with one field.

func (*CategoryGroupBy) BoolX

func (cgb *CategoryGroupBy) BoolX(ctx context.Context) bool

BoolX is like Bool, but panics if an error occurs.

func (*CategoryGroupBy) Bools

func (cgb *CategoryGroupBy) Bools(ctx context.Context) ([]bool, error)

Bools returns list of bools from group-by. It is only allowed when executing a group-by query with one field.

func (*CategoryGroupBy) BoolsX

func (cgb *CategoryGroupBy) BoolsX(ctx context.Context) []bool

BoolsX is like Bools, but panics if an error occurs.

func (*CategoryGroupBy) Float64

func (cgb *CategoryGroupBy) Float64(ctx context.Context) (_ float64, err error)

Float64 returns a single float64 from a group-by query. It is only allowed when executing a group-by query with one field.

func (*CategoryGroupBy) Float64X

func (cgb *CategoryGroupBy) Float64X(ctx context.Context) float64

Float64X is like Float64, but panics if an error occurs.

func (*CategoryGroupBy) Float64s

func (cgb *CategoryGroupBy) Float64s(ctx context.Context) ([]float64, error)

Float64s returns list of float64s from group-by. It is only allowed when executing a group-by query with one field.

func (*CategoryGroupBy) Float64sX

func (cgb *CategoryGroupBy) Float64sX(ctx context.Context) []float64

Float64sX is like Float64s, but panics if an error occurs.

func (*CategoryGroupBy) Int

func (cgb *CategoryGroupBy) Int(ctx context.Context) (_ int, err error)

Int returns a single int from a group-by query. It is only allowed when executing a group-by query with one field.

func (*CategoryGroupBy) IntX

func (cgb *CategoryGroupBy) IntX(ctx context.Context) int

IntX is like Int, but panics if an error occurs.

func (*CategoryGroupBy) Ints

func (cgb *CategoryGroupBy) Ints(ctx context.Context) ([]int, error)

Ints returns list of ints from group-by. It is only allowed when executing a group-by query with one field.

func (*CategoryGroupBy) IntsX

func (cgb *CategoryGroupBy) IntsX(ctx context.Context) []int

IntsX is like Ints, but panics if an error occurs.

func (*CategoryGroupBy) Scan

func (cgb *CategoryGroupBy) Scan(ctx context.Context, v interface{}) error

Scan applies the group-by query and scans the result into the given value.

func (*CategoryGroupBy) ScanX

func (cgb *CategoryGroupBy) ScanX(ctx context.Context, v interface{})

ScanX is like Scan, but panics if an error occurs.

func (*CategoryGroupBy) String

func (cgb *CategoryGroupBy) String(ctx context.Context) (_ string, err error)

String returns a single string from a group-by query. It is only allowed when executing a group-by query with one field.

func (*CategoryGroupBy) StringX

func (cgb *CategoryGroupBy) StringX(ctx context.Context) string

StringX is like String, but panics if an error occurs.

func (*CategoryGroupBy) Strings

func (cgb *CategoryGroupBy) Strings(ctx context.Context) ([]string, error)

Strings returns list of strings from group-by. It is only allowed when executing a group-by query with one field.

func (*CategoryGroupBy) StringsX

func (cgb *CategoryGroupBy) StringsX(ctx context.Context) []string

StringsX is like Strings, but panics if an error occurs.

type CategoryMutation

type CategoryMutation struct {
	// contains filtered or unexported fields
}

CategoryMutation represents an operation that mutates the Category nodes in the graph.

func (*CategoryMutation) AddField

func (m *CategoryMutation) AddField(name string, value ent.Value) error

AddField adds the value to the field with the given name. It returns an error if the field is not defined in the schema, or if the type mismatched the field type.

func (*CategoryMutation) AddedEdges

func (m *CategoryMutation) AddedEdges() []string

AddedEdges returns all edge names that were set/added in this mutation.

func (*CategoryMutation) AddedField

func (m *CategoryMutation) AddedField(name string) (ent.Value, bool)

AddedField returns the numeric value that was incremented/decremented on a field with the given name. The second boolean return value indicates that this field was not set, or was not defined in the schema.

func (*CategoryMutation) AddedFields

func (m *CategoryMutation) AddedFields() []string

AddedFields returns all numeric fields that were incremented/decremented during this mutation.

func (*CategoryMutation) AddedIDs

func (m *CategoryMutation) AddedIDs(name string) []ent.Value

AddedIDs returns all IDs (to other nodes) that were added for the given edge name in this mutation.

func (*CategoryMutation) ClearEdge

func (m *CategoryMutation) ClearEdge(name string) error

ClearEdge clears the value of the edge with the given name. It returns an error if that edge is not defined in the schema.

func (*CategoryMutation) ClearField

func (m *CategoryMutation) ClearField(name string) error

ClearField clears the value of the field with the given name. It returns an error if the field is not defined in the schema.

func (*CategoryMutation) ClearedEdges

func (m *CategoryMutation) ClearedEdges() []string

ClearedEdges returns all edge names that were cleared in this mutation.

func (*CategoryMutation) ClearedFields

func (m *CategoryMutation) ClearedFields() []string

ClearedFields returns all nullable fields that were cleared during this mutation.

func (CategoryMutation) Client

func (m CategoryMutation) Client() *Client

Client returns a new `ent.Client` from the mutation. If the mutation was executed in a transaction (ent.Tx), a transactional client is returned.

func (*CategoryMutation) EdgeCleared

func (m *CategoryMutation) EdgeCleared(name string) bool

EdgeCleared returns a boolean which indicates if the edge with the given name was cleared in this mutation.

func (*CategoryMutation) Field

func (m *CategoryMutation) Field(name string) (ent.Value, bool)

Field returns the value of a field with the given name. The second boolean return value indicates that this field was not set, or was not defined in the schema.

func (*CategoryMutation) FieldCleared

func (m *CategoryMutation) FieldCleared(name string) bool

FieldCleared returns a boolean indicating if a field with the given name was cleared in this mutation.

func (*CategoryMutation) Fields

func (m *CategoryMutation) Fields() []string

Fields returns all fields that were changed during this mutation. Note that in order to get all numeric fields that were incremented/decremented, call AddedFields().

func (*CategoryMutation) ID

func (m *CategoryMutation) ID() (id uuid.UUID, exists bool)

ID returns the ID value in the mutation. Note that the ID is only available if it was provided to the builder.

func (*CategoryMutation) Name

func (m *CategoryMutation) Name() (r string, exists bool)

Name returns the value of the "name" field in the mutation.

func (*CategoryMutation) OldField

func (m *CategoryMutation) OldField(ctx context.Context, name string) (ent.Value, error)

OldField returns the old value of the field from the database. An error is returned if the mutation operation is not UpdateOne, or the query to the database failed.

func (*CategoryMutation) OldName

func (m *CategoryMutation) OldName(ctx context.Context) (v string, err error)

OldName returns the old "name" field's value of the Category entity. If the Category object wasn't provided to the builder, the object is fetched from the database. An error is returned if the mutation operation is not UpdateOne, or the database query fails.

func (*CategoryMutation) Op

func (m *CategoryMutation) Op() Op

Op returns the operation name.

func (*CategoryMutation) RemovedEdges

func (m *CategoryMutation) RemovedEdges() []string

RemovedEdges returns all edge names that were removed in this mutation.

func (*CategoryMutation) RemovedIDs

func (m *CategoryMutation) RemovedIDs(name string) []ent.Value

RemovedIDs returns all IDs (to other nodes) that were removed for the edge with the given name in this mutation.

func (*CategoryMutation) ResetEdge

func (m *CategoryMutation) ResetEdge(name string) error

ResetEdge resets all changes to the edge with the given name in this mutation. It returns an error if the edge is not defined in the schema.

func (*CategoryMutation) ResetField

func (m *CategoryMutation) ResetField(name string) error

ResetField resets all changes in the mutation for the field with the given name. It returns an error if the field is not defined in the schema.

func (*CategoryMutation) ResetName

func (m *CategoryMutation) ResetName()

ResetName resets all changes to the "name" field.

func (*CategoryMutation) SetField

func (m *CategoryMutation) SetField(name string, value ent.Value) error

SetField sets the value of a field with the given name. It returns an error if the field is not defined in the schema, or if the type mismatched the field type.

func (*CategoryMutation) SetID

func (m *CategoryMutation) SetID(id uuid.UUID)

SetID sets the value of the id field. Note that this operation is only accepted on creation of Category entities.

func (*CategoryMutation) SetName

func (m *CategoryMutation) SetName(s string)

SetName sets the "name" field.

func (CategoryMutation) Tx

func (m CategoryMutation) Tx() (*Tx, error)

Tx returns an `ent.Tx` for mutations that were executed in transactions; it returns an error otherwise.

func (*CategoryMutation) Type

func (m *CategoryMutation) Type() string

Type returns the node type of this mutation (Category).

type CategoryQuery

type CategoryQuery struct {
	// contains filtered or unexported fields
}

CategoryQuery is the builder for querying Category entities.

func (*CategoryQuery) All

func (cq *CategoryQuery) All(ctx context.Context) ([]*Category, error)

All executes the query and returns a list of Categories.

func (*CategoryQuery) AllX

func (cq *CategoryQuery) AllX(ctx context.Context) []*Category

AllX is like All, but panics if an error occurs.

func (*CategoryQuery) Clone

func (cq *CategoryQuery) Clone() *CategoryQuery

Clone returns a duplicate of the CategoryQuery builder, including all associated steps. It can be used to prepare common query builders and use them differently after the clone is made.

func (*CategoryQuery) Count

func (cq *CategoryQuery) Count(ctx context.Context) (int, error)

Count returns the count of the given query.

func (*CategoryQuery) CountX

func (cq *CategoryQuery) CountX(ctx context.Context) int

CountX is like Count, but panics if an error occurs.

func (*CategoryQuery) Exist

func (cq *CategoryQuery) Exist(ctx context.Context) (bool, error)

Exist returns true if the query has elements in the graph.

func (*CategoryQuery) ExistX

func (cq *CategoryQuery) ExistX(ctx context.Context) bool

ExistX is like Exist, but panics if an error occurs.

func (*CategoryQuery) First

func (cq *CategoryQuery) First(ctx context.Context) (*Category, error)

First returns the first Category entity from the query. Returns a *NotFoundError when no Category was found.

func (*CategoryQuery) FirstID

func (cq *CategoryQuery) FirstID(ctx context.Context) (id uuid.UUID, err error)

FirstID returns the first Category ID from the query. Returns a *NotFoundError when no Category ID was found.

func (*CategoryQuery) FirstIDX

func (cq *CategoryQuery) FirstIDX(ctx context.Context) uuid.UUID

FirstIDX is like FirstID, but panics if an error occurs.

func (*CategoryQuery) FirstX

func (cq *CategoryQuery) FirstX(ctx context.Context) *Category

FirstX is like First, but panics if an error occurs.

func (*CategoryQuery) GroupBy

func (cq *CategoryQuery) GroupBy(field string, fields ...string) *CategoryGroupBy

GroupBy is used to group vertices by one or more fields/columns. It is often used with aggregate functions, like: count, max, mean, min, sum.

Example:

var v []struct {
	Name string `json:"name,omitempty"`
	Count int `json:"count,omitempty"`
}

client.Category.Query().
	GroupBy(category.FieldName).
	Aggregate(ent.Count()).
	Scan(ctx, &v)

func (*CategoryQuery) IDs

func (cq *CategoryQuery) IDs(ctx context.Context) ([]uuid.UUID, error)

IDs executes the query and returns a list of Category IDs.

func (*CategoryQuery) IDsX

func (cq *CategoryQuery) IDsX(ctx context.Context) []uuid.UUID

IDsX is like IDs, but panics if an error occurs.

func (*CategoryQuery) Limit

func (cq *CategoryQuery) Limit(limit int) *CategoryQuery

Limit adds a limit step to the query.

func (*CategoryQuery) Offset

func (cq *CategoryQuery) Offset(offset int) *CategoryQuery

Offset adds an offset step to the query.

func (*CategoryQuery) Only

func (cq *CategoryQuery) Only(ctx context.Context) (*Category, error)

Only returns a single Category entity found by the query, ensuring it only returns one. Returns a *NotSingularError when exactly one Category entity is not found. Returns a *NotFoundError when no Category entities are found.

func (*CategoryQuery) OnlyID

func (cq *CategoryQuery) OnlyID(ctx context.Context) (id uuid.UUID, err error)

OnlyID is like Only, but returns the only Category ID in the query. Returns a *NotSingularError when exactly one Category ID is not found. Returns a *NotFoundError when no entities are found.

func (*CategoryQuery) OnlyIDX

func (cq *CategoryQuery) OnlyIDX(ctx context.Context) uuid.UUID

OnlyIDX is like OnlyID, but panics if an error occurs.

func (*CategoryQuery) OnlyX

func (cq *CategoryQuery) OnlyX(ctx context.Context) *Category

OnlyX is like Only, but panics if an error occurs.

func (*CategoryQuery) Order

func (cq *CategoryQuery) Order(o ...OrderFunc) *CategoryQuery

Order adds an order step to the query.

func (*CategoryQuery) Select

func (cq *CategoryQuery) Select(field string, fields ...string) *CategorySelect

Select allows the selection one or more fields/columns for the given query, instead of selecting all fields in the entity.

Example:

var v []struct {
	Name string `json:"name,omitempty"`
}

client.Category.Query().
	Select(category.FieldName).
	Scan(ctx, &v)

func (*CategoryQuery) Where

func (cq *CategoryQuery) Where(ps ...predicate.Category) *CategoryQuery

Where adds a new predicate for the CategoryQuery builder.

type CategorySelect

type CategorySelect struct {
	*CategoryQuery
	// contains filtered or unexported fields
}

CategorySelect is the builder for selecting fields of Category entities.

func (*CategorySelect) Bool

func (cs *CategorySelect) Bool(ctx context.Context) (_ bool, err error)

Bool returns a single bool from a selector. It is only allowed when selecting one field.

func (*CategorySelect) BoolX

func (cs *CategorySelect) BoolX(ctx context.Context) bool

BoolX is like Bool, but panics if an error occurs.

func (*CategorySelect) Bools

func (cs *CategorySelect) Bools(ctx context.Context) ([]bool, error)

Bools returns list of bools from a selector. It is only allowed when selecting one field.

func (*CategorySelect) BoolsX

func (cs *CategorySelect) BoolsX(ctx context.Context) []bool

BoolsX is like Bools, but panics if an error occurs.

func (*CategorySelect) Float64

func (cs *CategorySelect) Float64(ctx context.Context) (_ float64, err error)

Float64 returns a single float64 from a selector. It is only allowed when selecting one field.

func (*CategorySelect) Float64X

func (cs *CategorySelect) Float64X(ctx context.Context) float64

Float64X is like Float64, but panics if an error occurs.

func (*CategorySelect) Float64s

func (cs *CategorySelect) Float64s(ctx context.Context) ([]float64, error)

Float64s returns list of float64s from a selector. It is only allowed when selecting one field.

func (*CategorySelect) Float64sX

func (cs *CategorySelect) Float64sX(ctx context.Context) []float64

Float64sX is like Float64s, but panics if an error occurs.

func (*CategorySelect) Int

func (cs *CategorySelect) Int(ctx context.Context) (_ int, err error)

Int returns a single int from a selector. It is only allowed when selecting one field.

func (*CategorySelect) IntX

func (cs *CategorySelect) IntX(ctx context.Context) int

IntX is like Int, but panics if an error occurs.

func (*CategorySelect) Ints

func (cs *CategorySelect) Ints(ctx context.Context) ([]int, error)

Ints returns list of ints from a selector. It is only allowed when selecting one field.

func (*CategorySelect) IntsX

func (cs *CategorySelect) IntsX(ctx context.Context) []int

IntsX is like Ints, but panics if an error occurs.

func (*CategorySelect) Scan

func (cs *CategorySelect) Scan(ctx context.Context, v interface{}) error

Scan applies the selector query and scans the result into the given value.

func (*CategorySelect) ScanX

func (cs *CategorySelect) ScanX(ctx context.Context, v interface{})

ScanX is like Scan, but panics if an error occurs.

func (*CategorySelect) String

func (cs *CategorySelect) String(ctx context.Context) (_ string, err error)

String returns a single string from a selector. It is only allowed when selecting one field.

func (*CategorySelect) StringX

func (cs *CategorySelect) StringX(ctx context.Context) string

StringX is like String, but panics if an error occurs.

func (*CategorySelect) Strings

func (cs *CategorySelect) Strings(ctx context.Context) ([]string, error)

Strings returns list of strings from a selector. It is only allowed when selecting one field.

func (*CategorySelect) StringsX

func (cs *CategorySelect) StringsX(ctx context.Context) []string

StringsX is like Strings, but panics if an error occurs.

type CategoryUpdate

type CategoryUpdate struct {
	// contains filtered or unexported fields
}

CategoryUpdate is the builder for updating Category entities.

func (*CategoryUpdate) Exec

func (cu *CategoryUpdate) Exec(ctx context.Context) error

Exec executes the query.

func (*CategoryUpdate) ExecX

func (cu *CategoryUpdate) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

func (*CategoryUpdate) Mutation

func (cu *CategoryUpdate) Mutation() *CategoryMutation

Mutation returns the CategoryMutation object of the builder.

func (*CategoryUpdate) Save

func (cu *CategoryUpdate) Save(ctx context.Context) (int, error)

Save executes the query and returns the number of nodes affected by the update operation.

func (*CategoryUpdate) SaveX

func (cu *CategoryUpdate) SaveX(ctx context.Context) int

SaveX is like Save, but panics if an error occurs.

func (*CategoryUpdate) SetName

func (cu *CategoryUpdate) SetName(s string) *CategoryUpdate

SetName sets the "name" field.

func (*CategoryUpdate) Where

func (cu *CategoryUpdate) Where(ps ...predicate.Category) *CategoryUpdate

Where adds a new predicate for the CategoryUpdate builder.

type CategoryUpdateOne

type CategoryUpdateOne struct {
	// contains filtered or unexported fields
}

CategoryUpdateOne is the builder for updating a single Category entity.

func (*CategoryUpdateOne) Exec

func (cuo *CategoryUpdateOne) Exec(ctx context.Context) error

Exec executes the query on the entity.

func (*CategoryUpdateOne) ExecX

func (cuo *CategoryUpdateOne) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

func (*CategoryUpdateOne) Mutation

func (cuo *CategoryUpdateOne) Mutation() *CategoryMutation

Mutation returns the CategoryMutation object of the builder.

func (*CategoryUpdateOne) Save

func (cuo *CategoryUpdateOne) Save(ctx context.Context) (*Category, error)

Save executes the query and returns the updated Category entity.

func (*CategoryUpdateOne) SaveX

func (cuo *CategoryUpdateOne) SaveX(ctx context.Context) *Category

SaveX is like Save, but panics if an error occurs.

func (*CategoryUpdateOne) SetName

func (cuo *CategoryUpdateOne) SetName(s string) *CategoryUpdateOne

SetName sets the "name" field.

type Client

type Client struct {

	// Schema is the client for creating, migrating and dropping schema.
	Schema *migrate.Schema
	// Category is the client for interacting with the Category builders.
	Category *CategoryClient
	// Product is the client for interacting with the Product builders.
	Product *ProductClient
	// Variant is the client for interacting with the Variant builders.
	Variant *VariantClient
	// contains filtered or unexported fields
}

Client is the client that holds all ent builders.

func FromContext

func FromContext(ctx context.Context) *Client

FromContext returns a Client stored inside a context, or nil if there isn't one.

func NewClient

func NewClient(opts ...Option) *Client

NewClient creates a new client configured with the given options.

func Open

func Open(driverName, dataSourceName string, options ...Option) (*Client, error)

Open opens a database/sql.DB specified by the driver name and the data source name, and returns a new client attached to it. Optional parameters can be added for configuring the client.

func (*Client) BeginTx

func (c *Client) BeginTx(ctx context.Context, opts *sql.TxOptions) (*Tx, error)

BeginTx returns a transactional client with specified options.

func (*Client) Close

func (c *Client) Close() error

Close closes the database connection and prevents new queries from starting.

func (*Client) Debug

func (c *Client) Debug() *Client

Debug returns a new debug-client. It's used to get verbose logging on specific operations.

client.Debug().
	Category.
	Query().
	Count(ctx)

func (*Client) Tx

func (c *Client) Tx(ctx context.Context) (*Tx, error)

Tx returns a new transactional client. The provided context is used until the transaction is committed or rolled back.

func (*Client) Use

func (c *Client) Use(hooks ...Hook)

Use adds the mutation hooks to all the entity clients. In order to add hooks to a specific client, call: `client.Node.Use(...)`.

type CommitFunc

type CommitFunc func(context.Context, *Tx) error

The CommitFunc type is an adapter to allow the use of ordinary function as a Committer. If f is a function with the appropriate signature, CommitFunc(f) is a Committer that calls f.

func (CommitFunc) Commit

func (f CommitFunc) Commit(ctx context.Context, tx *Tx) error

Commit calls f(ctx, m).

type CommitHook

type CommitHook func(Committer) Committer

CommitHook defines the "commit middleware". A function that gets a Committer and returns a Committer. For example:

hook := func(next ent.Committer) ent.Committer {
	return ent.CommitFunc(func(context.Context, tx *ent.Tx) error {
		// Do some stuff before.
		if err := next.Commit(ctx, tx); err != nil {
			return err
		}
		// Do some stuff after.
		return nil
	})
}

type Committer

type Committer interface {
	Commit(context.Context, *Tx) error
}

Committer is the interface that wraps the Committer method.

type ConstraintError

type ConstraintError struct {
	// contains filtered or unexported fields
}

ConstraintError returns when trying to create/update one or more entities and one or more of their constraints failed. For example, violation of edge or field uniqueness.

func (ConstraintError) Error

func (e ConstraintError) Error() string

Error implements the error interface.

func (*ConstraintError) Unwrap

func (e *ConstraintError) Unwrap() error

Unwrap implements the errors.Wrapper interface.

type Hook

type Hook = ent.Hook

ent aliases to avoid import conflicts in user's code.

type MutateFunc

type MutateFunc = ent.MutateFunc

ent aliases to avoid import conflicts in user's code.

type Mutation

type Mutation = ent.Mutation

ent aliases to avoid import conflicts in user's code.

type Mutator

type Mutator = ent.Mutator

ent aliases to avoid import conflicts in user's code.

type NotFoundError

type NotFoundError struct {
	// contains filtered or unexported fields
}

NotFoundError returns when trying to fetch a specific entity and it was not found in the database.

func (*NotFoundError) Error

func (e *NotFoundError) Error() string

Error implements the error interface.

type NotLoadedError

type NotLoadedError struct {
	// contains filtered or unexported fields
}

NotLoadedError returns when trying to get a node that was not loaded by the query.

func (*NotLoadedError) Error

func (e *NotLoadedError) Error() string

Error implements the error interface.

type NotSingularError

type NotSingularError struct {
	// contains filtered or unexported fields
}

NotSingularError returns when trying to fetch a singular entity and more then one was found in the database.

func (*NotSingularError) Error

func (e *NotSingularError) Error() string

Error implements the error interface.

type Op

type Op = ent.Op

ent aliases to avoid import conflicts in user's code.

type Option

type Option func(*config)

Option function to configure the client.

func Debug

func Debug() Option

Debug enables debug logging on the ent.Driver.

func Driver

func Driver(driver dialect.Driver) Option

Driver configures the client driver.

func Log

func Log(fn func(...interface{})) Option

Log sets the logging function for debug mode.

type OrderFunc

type OrderFunc func(*sql.Selector, func(string) bool)

OrderFunc applies an ordering on the sql selector.

func Asc

func Asc(fields ...string) OrderFunc

Asc applies the given fields in ASC order.

func Desc

func Desc(fields ...string) OrderFunc

Desc applies the given fields in DESC order.

type Policy

type Policy = ent.Policy

ent aliases to avoid import conflicts in user's code.

type Product

type Product struct {

	// ID of the ent.
	ID uuid.UUID `json:"id,omitempty"`
	// Name holds the value of the "name" field.
	Name string `json:"name,omitempty"`
	// CategoryRef holds the value of the "categoryRef" field.
	CategoryRef string `json:"categoryRef,omitempty"`
	// Edges holds the relations/edges for other nodes in the graph.
	// The values are being populated by the ProductQuery when eager-loading is set.
	Edges ProductEdges `json:"edges"`
	// contains filtered or unexported fields
}

Product is the model entity for the Product schema.

func (*Product) QueryVariants

func (pr *Product) QueryVariants() *VariantQuery

QueryVariants queries the "variants" edge of the Product entity.

func (*Product) String

func (pr *Product) String() string

String implements the fmt.Stringer.

func (*Product) Unwrap

func (pr *Product) Unwrap() *Product

Unwrap unwraps the Product entity that was returned from a transaction after it was closed, so that all future queries will be executed through the driver which created the transaction.

func (*Product) Update

func (pr *Product) Update() *ProductUpdateOne

Update returns a builder for updating this Product. Note that you need to call Product.Unwrap() before calling this method if this Product was returned from a transaction, and the transaction was committed or rolled back.

type ProductClient

type ProductClient struct {
	// contains filtered or unexported fields
}

ProductClient is a client for the Product schema.

func NewProductClient

func NewProductClient(c config) *ProductClient

NewProductClient returns a client for the Product from the given config.

func (*ProductClient) Create

func (c *ProductClient) Create() *ProductCreate

Create returns a create builder for Product.

func (*ProductClient) CreateBulk

func (c *ProductClient) CreateBulk(builders ...*ProductCreate) *ProductCreateBulk

CreateBulk returns a builder for creating a bulk of Product entities.

func (*ProductClient) Delete

func (c *ProductClient) Delete() *ProductDelete

Delete returns a delete builder for Product.

func (*ProductClient) DeleteOne

func (c *ProductClient) DeleteOne(pr *Product) *ProductDeleteOne

DeleteOne returns a delete builder for the given entity.

func (*ProductClient) DeleteOneID

func (c *ProductClient) DeleteOneID(id uuid.UUID) *ProductDeleteOne

DeleteOneID returns a delete builder for the given id.

func (*ProductClient) Get

func (c *ProductClient) Get(ctx context.Context, id uuid.UUID) (*Product, error)

Get returns a Product entity by its id.

func (*ProductClient) GetX

func (c *ProductClient) GetX(ctx context.Context, id uuid.UUID) *Product

GetX is like Get, but panics if an error occurs.

func (*ProductClient) Hooks

func (c *ProductClient) Hooks() []Hook

Hooks returns the client hooks.

func (*ProductClient) Query

func (c *ProductClient) Query() *ProductQuery

Query returns a query builder for Product.

func (*ProductClient) QueryVariants

func (c *ProductClient) QueryVariants(pr *Product) *VariantQuery

QueryVariants queries the variants edge of a Product.

func (*ProductClient) Update

func (c *ProductClient) Update() *ProductUpdate

Update returns an update builder for Product.

func (*ProductClient) UpdateOne

func (c *ProductClient) UpdateOne(pr *Product) *ProductUpdateOne

UpdateOne returns an update builder for the given entity.

func (*ProductClient) UpdateOneID

func (c *ProductClient) UpdateOneID(id uuid.UUID) *ProductUpdateOne

UpdateOneID returns an update builder for the given id.

func (*ProductClient) Use

func (c *ProductClient) Use(hooks ...Hook)

Use adds a list of mutation hooks to the hooks stack. A call to `Use(f, g, h)` equals to `product.Hooks(f(g(h())))`.

type ProductCreate

type ProductCreate struct {
	// contains filtered or unexported fields
}

ProductCreate is the builder for creating a Product entity.

func (*ProductCreate) AddVariantIDs

func (pc *ProductCreate) AddVariantIDs(ids ...uuid.UUID) *ProductCreate

AddVariantIDs adds the "variants" edge to the Variant entity by IDs.

func (*ProductCreate) AddVariants

func (pc *ProductCreate) AddVariants(v ...*Variant) *ProductCreate

AddVariants adds the "variants" edges to the Variant entity.

func (*ProductCreate) Mutation

func (pc *ProductCreate) Mutation() *ProductMutation

Mutation returns the ProductMutation object of the builder.

func (*ProductCreate) Save

func (pc *ProductCreate) Save(ctx context.Context) (*Product, error)

Save creates the Product in the database.

func (*ProductCreate) SaveX

func (pc *ProductCreate) SaveX(ctx context.Context) *Product

SaveX calls Save and panics if Save returns an error.

func (*ProductCreate) SetCategoryRef

func (pc *ProductCreate) SetCategoryRef(s string) *ProductCreate

SetCategoryRef sets the "categoryRef" field.

func (*ProductCreate) SetID

func (pc *ProductCreate) SetID(u uuid.UUID) *ProductCreate

SetID sets the "id" field.

func (*ProductCreate) SetName

func (pc *ProductCreate) SetName(s string) *ProductCreate

SetName sets the "name" field.

type ProductCreateBulk

type ProductCreateBulk struct {
	// contains filtered or unexported fields
}

ProductCreateBulk is the builder for creating many Product entities in bulk.

func (*ProductCreateBulk) Save

func (pcb *ProductCreateBulk) Save(ctx context.Context) ([]*Product, error)

Save creates the Product entities in the database.

func (*ProductCreateBulk) SaveX

func (pcb *ProductCreateBulk) SaveX(ctx context.Context) []*Product

SaveX is like Save, but panics if an error occurs.

type ProductDelete

type ProductDelete struct {
	// contains filtered or unexported fields
}

ProductDelete is the builder for deleting a Product entity.

func (*ProductDelete) Exec

func (pd *ProductDelete) Exec(ctx context.Context) (int, error)

Exec executes the deletion query and returns how many vertices were deleted.

func (*ProductDelete) ExecX

func (pd *ProductDelete) ExecX(ctx context.Context) int

ExecX is like Exec, but panics if an error occurs.

func (*ProductDelete) Where

func (pd *ProductDelete) Where(ps ...predicate.Product) *ProductDelete

Where adds a new predicate to the ProductDelete builder.

type ProductDeleteOne

type ProductDeleteOne struct {
	// contains filtered or unexported fields
}

ProductDeleteOne is the builder for deleting a single Product entity.

func (*ProductDeleteOne) Exec

func (pdo *ProductDeleteOne) Exec(ctx context.Context) error

Exec executes the deletion query.

func (*ProductDeleteOne) ExecX

func (pdo *ProductDeleteOne) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

type ProductEdges

type ProductEdges struct {
	// Variants holds the value of the variants edge.
	Variants []*Variant `json:"variants,omitempty"`
	// contains filtered or unexported fields
}

ProductEdges holds the relations/edges for other nodes in the graph.

func (ProductEdges) VariantsOrErr

func (e ProductEdges) VariantsOrErr() ([]*Variant, error)

VariantsOrErr returns the Variants value or an error if the edge was not loaded in eager-loading.

type ProductGroupBy

type ProductGroupBy struct {
	// contains filtered or unexported fields
}

ProductGroupBy is the group-by builder for Product entities.

func (*ProductGroupBy) Aggregate

func (pgb *ProductGroupBy) Aggregate(fns ...AggregateFunc) *ProductGroupBy

Aggregate adds the given aggregation functions to the group-by query.

func (*ProductGroupBy) Bool

func (pgb *ProductGroupBy) Bool(ctx context.Context) (_ bool, err error)

Bool returns a single bool from a group-by query. It is only allowed when executing a group-by query with one field.

func (*ProductGroupBy) BoolX

func (pgb *ProductGroupBy) BoolX(ctx context.Context) bool

BoolX is like Bool, but panics if an error occurs.

func (*ProductGroupBy) Bools

func (pgb *ProductGroupBy) Bools(ctx context.Context) ([]bool, error)

Bools returns list of bools from group-by. It is only allowed when executing a group-by query with one field.

func (*ProductGroupBy) BoolsX

func (pgb *ProductGroupBy) BoolsX(ctx context.Context) []bool

BoolsX is like Bools, but panics if an error occurs.

func (*ProductGroupBy) Float64

func (pgb *ProductGroupBy) Float64(ctx context.Context) (_ float64, err error)

Float64 returns a single float64 from a group-by query. It is only allowed when executing a group-by query with one field.

func (*ProductGroupBy) Float64X

func (pgb *ProductGroupBy) Float64X(ctx context.Context) float64

Float64X is like Float64, but panics if an error occurs.

func (*ProductGroupBy) Float64s

func (pgb *ProductGroupBy) Float64s(ctx context.Context) ([]float64, error)

Float64s returns list of float64s from group-by. It is only allowed when executing a group-by query with one field.

func (*ProductGroupBy) Float64sX

func (pgb *ProductGroupBy) Float64sX(ctx context.Context) []float64

Float64sX is like Float64s, but panics if an error occurs.

func (*ProductGroupBy) Int

func (pgb *ProductGroupBy) Int(ctx context.Context) (_ int, err error)

Int returns a single int from a group-by query. It is only allowed when executing a group-by query with one field.

func (*ProductGroupBy) IntX

func (pgb *ProductGroupBy) IntX(ctx context.Context) int

IntX is like Int, but panics if an error occurs.

func (*ProductGroupBy) Ints

func (pgb *ProductGroupBy) Ints(ctx context.Context) ([]int, error)

Ints returns list of ints from group-by. It is only allowed when executing a group-by query with one field.

func (*ProductGroupBy) IntsX

func (pgb *ProductGroupBy) IntsX(ctx context.Context) []int

IntsX is like Ints, but panics if an error occurs.

func (*ProductGroupBy) Scan

func (pgb *ProductGroupBy) Scan(ctx context.Context, v interface{}) error

Scan applies the group-by query and scans the result into the given value.

func (*ProductGroupBy) ScanX

func (pgb *ProductGroupBy) ScanX(ctx context.Context, v interface{})

ScanX is like Scan, but panics if an error occurs.

func (*ProductGroupBy) String

func (pgb *ProductGroupBy) String(ctx context.Context) (_ string, err error)

String returns a single string from a group-by query. It is only allowed when executing a group-by query with one field.

func (*ProductGroupBy) StringX

func (pgb *ProductGroupBy) StringX(ctx context.Context) string

StringX is like String, but panics if an error occurs.

func (*ProductGroupBy) Strings

func (pgb *ProductGroupBy) Strings(ctx context.Context) ([]string, error)

Strings returns list of strings from group-by. It is only allowed when executing a group-by query with one field.

func (*ProductGroupBy) StringsX

func (pgb *ProductGroupBy) StringsX(ctx context.Context) []string

StringsX is like Strings, but panics if an error occurs.

type ProductMutation

type ProductMutation struct {
	// contains filtered or unexported fields
}

ProductMutation represents an operation that mutates the Product nodes in the graph.

func (*ProductMutation) AddField

func (m *ProductMutation) AddField(name string, value ent.Value) error

AddField adds the value to the field with the given name. It returns an error if the field is not defined in the schema, or if the type mismatched the field type.

func (*ProductMutation) AddVariantIDs

func (m *ProductMutation) AddVariantIDs(ids ...uuid.UUID)

AddVariantIDs adds the "variants" edge to the Variant entity by ids.

func (*ProductMutation) AddedEdges

func (m *ProductMutation) AddedEdges() []string

AddedEdges returns all edge names that were set/added in this mutation.

func (*ProductMutation) AddedField

func (m *ProductMutation) AddedField(name string) (ent.Value, bool)

AddedField returns the numeric value that was incremented/decremented on a field with the given name. The second boolean return value indicates that this field was not set, or was not defined in the schema.

func (*ProductMutation) AddedFields

func (m *ProductMutation) AddedFields() []string

AddedFields returns all numeric fields that were incremented/decremented during this mutation.

func (*ProductMutation) AddedIDs

func (m *ProductMutation) AddedIDs(name string) []ent.Value

AddedIDs returns all IDs (to other nodes) that were added for the given edge name in this mutation.

func (*ProductMutation) CategoryRef

func (m *ProductMutation) CategoryRef() (r string, exists bool)

CategoryRef returns the value of the "categoryRef" field in the mutation.

func (*ProductMutation) ClearEdge

func (m *ProductMutation) ClearEdge(name string) error

ClearEdge clears the value of the edge with the given name. It returns an error if that edge is not defined in the schema.

func (*ProductMutation) ClearField

func (m *ProductMutation) ClearField(name string) error

ClearField clears the value of the field with the given name. It returns an error if the field is not defined in the schema.

func (*ProductMutation) ClearVariants

func (m *ProductMutation) ClearVariants()

ClearVariants clears the "variants" edge to the Variant entity.

func (*ProductMutation) ClearedEdges

func (m *ProductMutation) ClearedEdges() []string

ClearedEdges returns all edge names that were cleared in this mutation.

func (*ProductMutation) ClearedFields

func (m *ProductMutation) ClearedFields() []string

ClearedFields returns all nullable fields that were cleared during this mutation.

func (ProductMutation) Client

func (m ProductMutation) Client() *Client

Client returns a new `ent.Client` from the mutation. If the mutation was executed in a transaction (ent.Tx), a transactional client is returned.

func (*ProductMutation) EdgeCleared

func (m *ProductMutation) EdgeCleared(name string) bool

EdgeCleared returns a boolean which indicates if the edge with the given name was cleared in this mutation.

func (*ProductMutation) Field

func (m *ProductMutation) Field(name string) (ent.Value, bool)

Field returns the value of a field with the given name. The second boolean return value indicates that this field was not set, or was not defined in the schema.

func (*ProductMutation) FieldCleared

func (m *ProductMutation) FieldCleared(name string) bool

FieldCleared returns a boolean indicating if a field with the given name was cleared in this mutation.

func (*ProductMutation) Fields

func (m *ProductMutation) Fields() []string

Fields returns all fields that were changed during this mutation. Note that in order to get all numeric fields that were incremented/decremented, call AddedFields().

func (*ProductMutation) ID

func (m *ProductMutation) ID() (id uuid.UUID, exists bool)

ID returns the ID value in the mutation. Note that the ID is only available if it was provided to the builder.

func (*ProductMutation) Name

func (m *ProductMutation) Name() (r string, exists bool)

Name returns the value of the "name" field in the mutation.

func (*ProductMutation) OldCategoryRef

func (m *ProductMutation) OldCategoryRef(ctx context.Context) (v string, err error)

OldCategoryRef returns the old "categoryRef" field's value of the Product entity. If the Product object wasn't provided to the builder, the object is fetched from the database. An error is returned if the mutation operation is not UpdateOne, or the database query fails.

func (*ProductMutation) OldField

func (m *ProductMutation) OldField(ctx context.Context, name string) (ent.Value, error)

OldField returns the old value of the field from the database. An error is returned if the mutation operation is not UpdateOne, or the query to the database failed.

func (*ProductMutation) OldName

func (m *ProductMutation) OldName(ctx context.Context) (v string, err error)

OldName returns the old "name" field's value of the Product entity. If the Product object wasn't provided to the builder, the object is fetched from the database. An error is returned if the mutation operation is not UpdateOne, or the database query fails.

func (*ProductMutation) Op

func (m *ProductMutation) Op() Op

Op returns the operation name.

func (*ProductMutation) RemoveVariantIDs

func (m *ProductMutation) RemoveVariantIDs(ids ...uuid.UUID)

RemoveVariantIDs removes the "variants" edge to the Variant entity by IDs.

func (*ProductMutation) RemovedEdges

func (m *ProductMutation) RemovedEdges() []string

RemovedEdges returns all edge names that were removed in this mutation.

func (*ProductMutation) RemovedIDs

func (m *ProductMutation) RemovedIDs(name string) []ent.Value

RemovedIDs returns all IDs (to other nodes) that were removed for the edge with the given name in this mutation.

func (*ProductMutation) RemovedVariantsIDs

func (m *ProductMutation) RemovedVariantsIDs() (ids []uuid.UUID)

RemovedVariants returns the removed IDs of the "variants" edge to the Variant entity.

func (*ProductMutation) ResetCategoryRef

func (m *ProductMutation) ResetCategoryRef()

ResetCategoryRef resets all changes to the "categoryRef" field.

func (*ProductMutation) ResetEdge

func (m *ProductMutation) ResetEdge(name string) error

ResetEdge resets all changes to the edge with the given name in this mutation. It returns an error if the edge is not defined in the schema.

func (*ProductMutation) ResetField

func (m *ProductMutation) ResetField(name string) error

ResetField resets all changes in the mutation for the field with the given name. It returns an error if the field is not defined in the schema.

func (*ProductMutation) ResetName

func (m *ProductMutation) ResetName()

ResetName resets all changes to the "name" field.

func (*ProductMutation) ResetVariants

func (m *ProductMutation) ResetVariants()

ResetVariants resets all changes to the "variants" edge.

func (*ProductMutation) SetCategoryRef

func (m *ProductMutation) SetCategoryRef(s string)

SetCategoryRef sets the "categoryRef" field.

func (*ProductMutation) SetField

func (m *ProductMutation) SetField(name string, value ent.Value) error

SetField sets the value of a field with the given name. It returns an error if the field is not defined in the schema, or if the type mismatched the field type.

func (*ProductMutation) SetID

func (m *ProductMutation) SetID(id uuid.UUID)

SetID sets the value of the id field. Note that this operation is only accepted on creation of Product entities.

func (*ProductMutation) SetName

func (m *ProductMutation) SetName(s string)

SetName sets the "name" field.

func (ProductMutation) Tx

func (m ProductMutation) Tx() (*Tx, error)

Tx returns an `ent.Tx` for mutations that were executed in transactions; it returns an error otherwise.

func (*ProductMutation) Type

func (m *ProductMutation) Type() string

Type returns the node type of this mutation (Product).

func (*ProductMutation) VariantsCleared

func (m *ProductMutation) VariantsCleared() bool

VariantsCleared returns if the "variants" edge to the Variant entity was cleared.

func (*ProductMutation) VariantsIDs

func (m *ProductMutation) VariantsIDs() (ids []uuid.UUID)

VariantsIDs returns the "variants" edge IDs in the mutation.

type ProductQuery

type ProductQuery struct {
	// contains filtered or unexported fields
}

ProductQuery is the builder for querying Product entities.

func (*ProductQuery) All

func (pq *ProductQuery) All(ctx context.Context) ([]*Product, error)

All executes the query and returns a list of Products.

func (*ProductQuery) AllX

func (pq *ProductQuery) AllX(ctx context.Context) []*Product

AllX is like All, but panics if an error occurs.

func (*ProductQuery) Clone

func (pq *ProductQuery) Clone() *ProductQuery

Clone returns a duplicate of the ProductQuery builder, including all associated steps. It can be used to prepare common query builders and use them differently after the clone is made.

func (*ProductQuery) Count

func (pq *ProductQuery) Count(ctx context.Context) (int, error)

Count returns the count of the given query.

func (*ProductQuery) CountX

func (pq *ProductQuery) CountX(ctx context.Context) int

CountX is like Count, but panics if an error occurs.

func (*ProductQuery) Exist

func (pq *ProductQuery) Exist(ctx context.Context) (bool, error)

Exist returns true if the query has elements in the graph.

func (*ProductQuery) ExistX

func (pq *ProductQuery) ExistX(ctx context.Context) bool

ExistX is like Exist, but panics if an error occurs.

func (*ProductQuery) First

func (pq *ProductQuery) First(ctx context.Context) (*Product, error)

First returns the first Product entity from the query. Returns a *NotFoundError when no Product was found.

func (*ProductQuery) FirstID

func (pq *ProductQuery) FirstID(ctx context.Context) (id uuid.UUID, err error)

FirstID returns the first Product ID from the query. Returns a *NotFoundError when no Product ID was found.

func (*ProductQuery) FirstIDX

func (pq *ProductQuery) FirstIDX(ctx context.Context) uuid.UUID

FirstIDX is like FirstID, but panics if an error occurs.

func (*ProductQuery) FirstX

func (pq *ProductQuery) FirstX(ctx context.Context) *Product

FirstX is like First, but panics if an error occurs.

func (*ProductQuery) GroupBy

func (pq *ProductQuery) GroupBy(field string, fields ...string) *ProductGroupBy

GroupBy is used to group vertices by one or more fields/columns. It is often used with aggregate functions, like: count, max, mean, min, sum.

Example:

var v []struct {
	Name string `json:"name,omitempty"`
	Count int `json:"count,omitempty"`
}

client.Product.Query().
	GroupBy(product.FieldName).
	Aggregate(ent.Count()).
	Scan(ctx, &v)

func (*ProductQuery) IDs

func (pq *ProductQuery) IDs(ctx context.Context) ([]uuid.UUID, error)

IDs executes the query and returns a list of Product IDs.

func (*ProductQuery) IDsX

func (pq *ProductQuery) IDsX(ctx context.Context) []uuid.UUID

IDsX is like IDs, but panics if an error occurs.

func (*ProductQuery) Limit

func (pq *ProductQuery) Limit(limit int) *ProductQuery

Limit adds a limit step to the query.

func (*ProductQuery) Offset

func (pq *ProductQuery) Offset(offset int) *ProductQuery

Offset adds an offset step to the query.

func (*ProductQuery) Only

func (pq *ProductQuery) Only(ctx context.Context) (*Product, error)

Only returns a single Product entity found by the query, ensuring it only returns one. Returns a *NotSingularError when exactly one Product entity is not found. Returns a *NotFoundError when no Product entities are found.

func (*ProductQuery) OnlyID

func (pq *ProductQuery) OnlyID(ctx context.Context) (id uuid.UUID, err error)

OnlyID is like Only, but returns the only Product ID in the query. Returns a *NotSingularError when exactly one Product ID is not found. Returns a *NotFoundError when no entities are found.

func (*ProductQuery) OnlyIDX

func (pq *ProductQuery) OnlyIDX(ctx context.Context) uuid.UUID

OnlyIDX is like OnlyID, but panics if an error occurs.

func (*ProductQuery) OnlyX

func (pq *ProductQuery) OnlyX(ctx context.Context) *Product

OnlyX is like Only, but panics if an error occurs.

func (*ProductQuery) Order

func (pq *ProductQuery) Order(o ...OrderFunc) *ProductQuery

Order adds an order step to the query.

func (*ProductQuery) QueryVariants

func (pq *ProductQuery) QueryVariants() *VariantQuery

QueryVariants chains the current query on the "variants" edge.

func (*ProductQuery) Select

func (pq *ProductQuery) Select(field string, fields ...string) *ProductSelect

Select allows the selection one or more fields/columns for the given query, instead of selecting all fields in the entity.

Example:

var v []struct {
	Name string `json:"name,omitempty"`
}

client.Product.Query().
	Select(product.FieldName).
	Scan(ctx, &v)

func (*ProductQuery) Where

func (pq *ProductQuery) Where(ps ...predicate.Product) *ProductQuery

Where adds a new predicate for the ProductQuery builder.

func (*ProductQuery) WithVariants

func (pq *ProductQuery) WithVariants(opts ...func(*VariantQuery)) *ProductQuery

WithVariants tells the query-builder to eager-load the nodes that are connected to the "variants" edge. The optional arguments are used to configure the query builder of the edge.

type ProductSelect

type ProductSelect struct {
	*ProductQuery
	// contains filtered or unexported fields
}

ProductSelect is the builder for selecting fields of Product entities.

func (*ProductSelect) Bool

func (ps *ProductSelect) Bool(ctx context.Context) (_ bool, err error)

Bool returns a single bool from a selector. It is only allowed when selecting one field.

func (*ProductSelect) BoolX

func (ps *ProductSelect) BoolX(ctx context.Context) bool

BoolX is like Bool, but panics if an error occurs.

func (*ProductSelect) Bools

func (ps *ProductSelect) Bools(ctx context.Context) ([]bool, error)

Bools returns list of bools from a selector. It is only allowed when selecting one field.

func (*ProductSelect) BoolsX

func (ps *ProductSelect) BoolsX(ctx context.Context) []bool

BoolsX is like Bools, but panics if an error occurs.

func (*ProductSelect) Float64

func (ps *ProductSelect) Float64(ctx context.Context) (_ float64, err error)

Float64 returns a single float64 from a selector. It is only allowed when selecting one field.

func (*ProductSelect) Float64X

func (ps *ProductSelect) Float64X(ctx context.Context) float64

Float64X is like Float64, but panics if an error occurs.

func (*ProductSelect) Float64s

func (ps *ProductSelect) Float64s(ctx context.Context) ([]float64, error)

Float64s returns list of float64s from a selector. It is only allowed when selecting one field.

func (*ProductSelect) Float64sX

func (ps *ProductSelect) Float64sX(ctx context.Context) []float64

Float64sX is like Float64s, but panics if an error occurs.

func (*ProductSelect) Int

func (ps *ProductSelect) Int(ctx context.Context) (_ int, err error)

Int returns a single int from a selector. It is only allowed when selecting one field.

func (*ProductSelect) IntX

func (ps *ProductSelect) IntX(ctx context.Context) int

IntX is like Int, but panics if an error occurs.

func (*ProductSelect) Ints

func (ps *ProductSelect) Ints(ctx context.Context) ([]int, error)

Ints returns list of ints from a selector. It is only allowed when selecting one field.

func (*ProductSelect) IntsX

func (ps *ProductSelect) IntsX(ctx context.Context) []int

IntsX is like Ints, but panics if an error occurs.

func (*ProductSelect) Scan

func (ps *ProductSelect) Scan(ctx context.Context, v interface{}) error

Scan applies the selector query and scans the result into the given value.

func (*ProductSelect) ScanX

func (ps *ProductSelect) ScanX(ctx context.Context, v interface{})

ScanX is like Scan, but panics if an error occurs.

func (*ProductSelect) String

func (ps *ProductSelect) String(ctx context.Context) (_ string, err error)

String returns a single string from a selector. It is only allowed when selecting one field.

func (*ProductSelect) StringX

func (ps *ProductSelect) StringX(ctx context.Context) string

StringX is like String, but panics if an error occurs.

func (*ProductSelect) Strings

func (ps *ProductSelect) Strings(ctx context.Context) ([]string, error)

Strings returns list of strings from a selector. It is only allowed when selecting one field.

func (*ProductSelect) StringsX

func (ps *ProductSelect) StringsX(ctx context.Context) []string

StringsX is like Strings, but panics if an error occurs.

type ProductUpdate

type ProductUpdate struct {
	// contains filtered or unexported fields
}

ProductUpdate is the builder for updating Product entities.

func (*ProductUpdate) AddVariantIDs

func (pu *ProductUpdate) AddVariantIDs(ids ...uuid.UUID) *ProductUpdate

AddVariantIDs adds the "variants" edge to the Variant entity by IDs.

func (*ProductUpdate) AddVariants

func (pu *ProductUpdate) AddVariants(v ...*Variant) *ProductUpdate

AddVariants adds the "variants" edges to the Variant entity.

func (*ProductUpdate) ClearVariants

func (pu *ProductUpdate) ClearVariants() *ProductUpdate

ClearVariants clears all "variants" edges to the Variant entity.

func (*ProductUpdate) Exec

func (pu *ProductUpdate) Exec(ctx context.Context) error

Exec executes the query.

func (*ProductUpdate) ExecX

func (pu *ProductUpdate) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

func (*ProductUpdate) Mutation

func (pu *ProductUpdate) Mutation() *ProductMutation

Mutation returns the ProductMutation object of the builder.

func (*ProductUpdate) RemoveVariantIDs

func (pu *ProductUpdate) RemoveVariantIDs(ids ...uuid.UUID) *ProductUpdate

RemoveVariantIDs removes the "variants" edge to Variant entities by IDs.

func (*ProductUpdate) RemoveVariants

func (pu *ProductUpdate) RemoveVariants(v ...*Variant) *ProductUpdate

RemoveVariants removes "variants" edges to Variant entities.

func (*ProductUpdate) Save

func (pu *ProductUpdate) Save(ctx context.Context) (int, error)

Save executes the query and returns the number of nodes affected by the update operation.

func (*ProductUpdate) SaveX

func (pu *ProductUpdate) SaveX(ctx context.Context) int

SaveX is like Save, but panics if an error occurs.

func (*ProductUpdate) SetCategoryRef

func (pu *ProductUpdate) SetCategoryRef(s string) *ProductUpdate

SetCategoryRef sets the "categoryRef" field.

func (*ProductUpdate) SetName

func (pu *ProductUpdate) SetName(s string) *ProductUpdate

SetName sets the "name" field.

func (*ProductUpdate) Where

func (pu *ProductUpdate) Where(ps ...predicate.Product) *ProductUpdate

Where adds a new predicate for the ProductUpdate builder.

type ProductUpdateOne

type ProductUpdateOne struct {
	// contains filtered or unexported fields
}

ProductUpdateOne is the builder for updating a single Product entity.

func (*ProductUpdateOne) AddVariantIDs

func (puo *ProductUpdateOne) AddVariantIDs(ids ...uuid.UUID) *ProductUpdateOne

AddVariantIDs adds the "variants" edge to the Variant entity by IDs.

func (*ProductUpdateOne) AddVariants

func (puo *ProductUpdateOne) AddVariants(v ...*Variant) *ProductUpdateOne

AddVariants adds the "variants" edges to the Variant entity.

func (*ProductUpdateOne) ClearVariants

func (puo *ProductUpdateOne) ClearVariants() *ProductUpdateOne

ClearVariants clears all "variants" edges to the Variant entity.

func (*ProductUpdateOne) Exec

func (puo *ProductUpdateOne) Exec(ctx context.Context) error

Exec executes the query on the entity.

func (*ProductUpdateOne) ExecX

func (puo *ProductUpdateOne) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

func (*ProductUpdateOne) Mutation

func (puo *ProductUpdateOne) Mutation() *ProductMutation

Mutation returns the ProductMutation object of the builder.

func (*ProductUpdateOne) RemoveVariantIDs

func (puo *ProductUpdateOne) RemoveVariantIDs(ids ...uuid.UUID) *ProductUpdateOne

RemoveVariantIDs removes the "variants" edge to Variant entities by IDs.

func (*ProductUpdateOne) RemoveVariants

func (puo *ProductUpdateOne) RemoveVariants(v ...*Variant) *ProductUpdateOne

RemoveVariants removes "variants" edges to Variant entities.

func (*ProductUpdateOne) Save

func (puo *ProductUpdateOne) Save(ctx context.Context) (*Product, error)

Save executes the query and returns the updated Product entity.

func (*ProductUpdateOne) SaveX

func (puo *ProductUpdateOne) SaveX(ctx context.Context) *Product

SaveX is like Save, but panics if an error occurs.

func (*ProductUpdateOne) SetCategoryRef

func (puo *ProductUpdateOne) SetCategoryRef(s string) *ProductUpdateOne

SetCategoryRef sets the "categoryRef" field.

func (*ProductUpdateOne) SetName

func (puo *ProductUpdateOne) SetName(s string) *ProductUpdateOne

SetName sets the "name" field.

type Products

type Products []*Product

Products is a parsable slice of Product.

type Query

type Query = ent.Query

ent aliases to avoid import conflicts in user's code.

type RollbackFunc

type RollbackFunc func(context.Context, *Tx) error

The RollbackFunc type is an adapter to allow the use of ordinary function as a Rollbacker. If f is a function with the appropriate signature, RollbackFunc(f) is a Rollbacker that calls f.

func (RollbackFunc) Rollback

func (f RollbackFunc) Rollback(ctx context.Context, tx *Tx) error

Rollback calls f(ctx, m).

type RollbackHook

type RollbackHook func(Rollbacker) Rollbacker

RollbackHook defines the "rollback middleware". A function that gets a Rollbacker and returns a Rollbacker. For example:

hook := func(next ent.Rollbacker) ent.Rollbacker {
	return ent.RollbackFunc(func(context.Context, tx *ent.Tx) error {
		// Do some stuff before.
		if err := next.Rollback(ctx, tx); err != nil {
			return err
		}
		// Do some stuff after.
		return nil
	})
}

type Rollbacker

type Rollbacker interface {
	Rollback(context.Context, *Tx) error
}

Rollbacker is the interface that wraps the Rollbacker method.

type Tx

type Tx struct {

	// Category is the client for interacting with the Category builders.
	Category *CategoryClient
	// Product is the client for interacting with the Product builders.
	Product *ProductClient
	// Variant is the client for interacting with the Variant builders.
	Variant *VariantClient
	// contains filtered or unexported fields
}

Tx is a transactional client that is created by calling Client.Tx().

func TxFromContext

func TxFromContext(ctx context.Context) *Tx

TxFromContext returns a Tx stored inside a context, or nil if there isn't one.

func (*Tx) Client

func (tx *Tx) Client() *Client

Client returns a Client that binds to current transaction.

func (*Tx) Commit

func (tx *Tx) Commit() error

Commit commits the transaction.

func (*Tx) OnCommit

func (tx *Tx) OnCommit(f CommitHook)

OnCommit adds a hook to call on commit.

func (*Tx) OnRollback

func (tx *Tx) OnRollback(f RollbackHook)

OnRollback adds a hook to call on rollback.

func (*Tx) Rollback

func (tx *Tx) Rollback() error

Rollback rollbacks the transaction.

type ValidationError

type ValidationError struct {
	Name string // Field or edge name.
	// contains filtered or unexported fields
}

ValidationError returns when validating a field fails.

func (*ValidationError) Error

func (e *ValidationError) Error() string

Error implements the error interface.

func (*ValidationError) Unwrap

func (e *ValidationError) Unwrap() error

Unwrap implements the errors.Wrapper interface.

type Value

type Value = ent.Value

ent aliases to avoid import conflicts in user's code.

type Variant

type Variant struct {

	// ID of the ent.
	ID uuid.UUID `json:"id,omitempty"`
	// Code holds the value of the "code" field.
	Code string `json:"code,omitempty"`
	// Name holds the value of the "name" field.
	Name string `json:"name,omitempty"`
	// Price holds the value of the "price" field.
	Price float64 `json:"price,omitempty"`
	// Edges holds the relations/edges for other nodes in the graph.
	// The values are being populated by the VariantQuery when eager-loading is set.
	Edges VariantEdges `json:"edges"`
	// contains filtered or unexported fields
}

Variant is the model entity for the Variant schema.

func (*Variant) QueryProduct

func (v *Variant) QueryProduct() *ProductQuery

QueryProduct queries the "product" edge of the Variant entity.

func (*Variant) String

func (v *Variant) String() string

String implements the fmt.Stringer.

func (*Variant) Unwrap

func (v *Variant) Unwrap() *Variant

Unwrap unwraps the Variant entity that was returned from a transaction after it was closed, so that all future queries will be executed through the driver which created the transaction.

func (*Variant) Update

func (v *Variant) Update() *VariantUpdateOne

Update returns a builder for updating this Variant. Note that you need to call Variant.Unwrap() before calling this method if this Variant was returned from a transaction, and the transaction was committed or rolled back.

type VariantClient

type VariantClient struct {
	// contains filtered or unexported fields
}

VariantClient is a client for the Variant schema.

func NewVariantClient

func NewVariantClient(c config) *VariantClient

NewVariantClient returns a client for the Variant from the given config.

func (*VariantClient) Create

func (c *VariantClient) Create() *VariantCreate

Create returns a create builder for Variant.

func (*VariantClient) CreateBulk

func (c *VariantClient) CreateBulk(builders ...*VariantCreate) *VariantCreateBulk

CreateBulk returns a builder for creating a bulk of Variant entities.

func (*VariantClient) Delete

func (c *VariantClient) Delete() *VariantDelete

Delete returns a delete builder for Variant.

func (*VariantClient) DeleteOne

func (c *VariantClient) DeleteOne(v *Variant) *VariantDeleteOne

DeleteOne returns a delete builder for the given entity.

func (*VariantClient) DeleteOneID

func (c *VariantClient) DeleteOneID(id uuid.UUID) *VariantDeleteOne

DeleteOneID returns a delete builder for the given id.

func (*VariantClient) Get

func (c *VariantClient) Get(ctx context.Context, id uuid.UUID) (*Variant, error)

Get returns a Variant entity by its id.

func (*VariantClient) GetX

func (c *VariantClient) GetX(ctx context.Context, id uuid.UUID) *Variant

GetX is like Get, but panics if an error occurs.

func (*VariantClient) Hooks

func (c *VariantClient) Hooks() []Hook

Hooks returns the client hooks.

func (*VariantClient) Query

func (c *VariantClient) Query() *VariantQuery

Query returns a query builder for Variant.

func (*VariantClient) QueryProduct

func (c *VariantClient) QueryProduct(v *Variant) *ProductQuery

QueryProduct queries the product edge of a Variant.

func (*VariantClient) Update

func (c *VariantClient) Update() *VariantUpdate

Update returns an update builder for Variant.

func (*VariantClient) UpdateOne

func (c *VariantClient) UpdateOne(v *Variant) *VariantUpdateOne

UpdateOne returns an update builder for the given entity.

func (*VariantClient) UpdateOneID

func (c *VariantClient) UpdateOneID(id uuid.UUID) *VariantUpdateOne

UpdateOneID returns an update builder for the given id.

func (*VariantClient) Use

func (c *VariantClient) Use(hooks ...Hook)

Use adds a list of mutation hooks to the hooks stack. A call to `Use(f, g, h)` equals to `variant.Hooks(f(g(h())))`.

type VariantCreate

type VariantCreate struct {
	// contains filtered or unexported fields
}

VariantCreate is the builder for creating a Variant entity.

func (*VariantCreate) Mutation

func (vc *VariantCreate) Mutation() *VariantMutation

Mutation returns the VariantMutation object of the builder.

func (*VariantCreate) Save

func (vc *VariantCreate) Save(ctx context.Context) (*Variant, error)

Save creates the Variant in the database.

func (*VariantCreate) SaveX

func (vc *VariantCreate) SaveX(ctx context.Context) *Variant

SaveX calls Save and panics if Save returns an error.

func (*VariantCreate) SetCode

func (vc *VariantCreate) SetCode(s string) *VariantCreate

SetCode sets the "code" field.

func (*VariantCreate) SetID

func (vc *VariantCreate) SetID(u uuid.UUID) *VariantCreate

SetID sets the "id" field.

func (*VariantCreate) SetName

func (vc *VariantCreate) SetName(s string) *VariantCreate

SetName sets the "name" field.

func (*VariantCreate) SetNillableProductID

func (vc *VariantCreate) SetNillableProductID(id *uuid.UUID) *VariantCreate

SetNillableProductID sets the "product" edge to the Product entity by ID if the given value is not nil.

func (*VariantCreate) SetPrice

func (vc *VariantCreate) SetPrice(f float64) *VariantCreate

SetPrice sets the "price" field.

func (*VariantCreate) SetProduct

func (vc *VariantCreate) SetProduct(p *Product) *VariantCreate

SetProduct sets the "product" edge to the Product entity.

func (*VariantCreate) SetProductID

func (vc *VariantCreate) SetProductID(id uuid.UUID) *VariantCreate

SetProductID sets the "product" edge to the Product entity by ID.

type VariantCreateBulk

type VariantCreateBulk struct {
	// contains filtered or unexported fields
}

VariantCreateBulk is the builder for creating many Variant entities in bulk.

func (*VariantCreateBulk) Save

func (vcb *VariantCreateBulk) Save(ctx context.Context) ([]*Variant, error)

Save creates the Variant entities in the database.

func (*VariantCreateBulk) SaveX

func (vcb *VariantCreateBulk) SaveX(ctx context.Context) []*Variant

SaveX is like Save, but panics if an error occurs.

type VariantDelete

type VariantDelete struct {
	// contains filtered or unexported fields
}

VariantDelete is the builder for deleting a Variant entity.

func (*VariantDelete) Exec

func (vd *VariantDelete) Exec(ctx context.Context) (int, error)

Exec executes the deletion query and returns how many vertices were deleted.

func (*VariantDelete) ExecX

func (vd *VariantDelete) ExecX(ctx context.Context) int

ExecX is like Exec, but panics if an error occurs.

func (*VariantDelete) Where

func (vd *VariantDelete) Where(ps ...predicate.Variant) *VariantDelete

Where adds a new predicate to the VariantDelete builder.

type VariantDeleteOne

type VariantDeleteOne struct {
	// contains filtered or unexported fields
}

VariantDeleteOne is the builder for deleting a single Variant entity.

func (*VariantDeleteOne) Exec

func (vdo *VariantDeleteOne) Exec(ctx context.Context) error

Exec executes the deletion query.

func (*VariantDeleteOne) ExecX

func (vdo *VariantDeleteOne) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

type VariantEdges

type VariantEdges struct {
	// Product holds the value of the product edge.
	Product *Product `json:"product,omitempty"`
	// contains filtered or unexported fields
}

VariantEdges holds the relations/edges for other nodes in the graph.

func (VariantEdges) ProductOrErr

func (e VariantEdges) ProductOrErr() (*Product, error)

ProductOrErr returns the Product value or an error if the edge was not loaded in eager-loading, or loaded but was not found.

type VariantGroupBy

type VariantGroupBy struct {
	// contains filtered or unexported fields
}

VariantGroupBy is the group-by builder for Variant entities.

func (*VariantGroupBy) Aggregate

func (vgb *VariantGroupBy) Aggregate(fns ...AggregateFunc) *VariantGroupBy

Aggregate adds the given aggregation functions to the group-by query.

func (*VariantGroupBy) Bool

func (vgb *VariantGroupBy) Bool(ctx context.Context) (_ bool, err error)

Bool returns a single bool from a group-by query. It is only allowed when executing a group-by query with one field.

func (*VariantGroupBy) BoolX

func (vgb *VariantGroupBy) BoolX(ctx context.Context) bool

BoolX is like Bool, but panics if an error occurs.

func (*VariantGroupBy) Bools

func (vgb *VariantGroupBy) Bools(ctx context.Context) ([]bool, error)

Bools returns list of bools from group-by. It is only allowed when executing a group-by query with one field.

func (*VariantGroupBy) BoolsX

func (vgb *VariantGroupBy) BoolsX(ctx context.Context) []bool

BoolsX is like Bools, but panics if an error occurs.

func (*VariantGroupBy) Float64

func (vgb *VariantGroupBy) Float64(ctx context.Context) (_ float64, err error)

Float64 returns a single float64 from a group-by query. It is only allowed when executing a group-by query with one field.

func (*VariantGroupBy) Float64X

func (vgb *VariantGroupBy) Float64X(ctx context.Context) float64

Float64X is like Float64, but panics if an error occurs.

func (*VariantGroupBy) Float64s

func (vgb *VariantGroupBy) Float64s(ctx context.Context) ([]float64, error)

Float64s returns list of float64s from group-by. It is only allowed when executing a group-by query with one field.

func (*VariantGroupBy) Float64sX

func (vgb *VariantGroupBy) Float64sX(ctx context.Context) []float64

Float64sX is like Float64s, but panics if an error occurs.

func (*VariantGroupBy) Int

func (vgb *VariantGroupBy) Int(ctx context.Context) (_ int, err error)

Int returns a single int from a group-by query. It is only allowed when executing a group-by query with one field.

func (*VariantGroupBy) IntX

func (vgb *VariantGroupBy) IntX(ctx context.Context) int

IntX is like Int, but panics if an error occurs.

func (*VariantGroupBy) Ints

func (vgb *VariantGroupBy) Ints(ctx context.Context) ([]int, error)

Ints returns list of ints from group-by. It is only allowed when executing a group-by query with one field.

func (*VariantGroupBy) IntsX

func (vgb *VariantGroupBy) IntsX(ctx context.Context) []int

IntsX is like Ints, but panics if an error occurs.

func (*VariantGroupBy) Scan

func (vgb *VariantGroupBy) Scan(ctx context.Context, v interface{}) error

Scan applies the group-by query and scans the result into the given value.

func (*VariantGroupBy) ScanX

func (vgb *VariantGroupBy) ScanX(ctx context.Context, v interface{})

ScanX is like Scan, but panics if an error occurs.

func (*VariantGroupBy) String

func (vgb *VariantGroupBy) String(ctx context.Context) (_ string, err error)

String returns a single string from a group-by query. It is only allowed when executing a group-by query with one field.

func (*VariantGroupBy) StringX

func (vgb *VariantGroupBy) StringX(ctx context.Context) string

StringX is like String, but panics if an error occurs.

func (*VariantGroupBy) Strings

func (vgb *VariantGroupBy) Strings(ctx context.Context) ([]string, error)

Strings returns list of strings from group-by. It is only allowed when executing a group-by query with one field.

func (*VariantGroupBy) StringsX

func (vgb *VariantGroupBy) StringsX(ctx context.Context) []string

StringsX is like Strings, but panics if an error occurs.

type VariantMutation

type VariantMutation struct {
	// contains filtered or unexported fields
}

VariantMutation represents an operation that mutates the Variant nodes in the graph.

func (*VariantMutation) AddField

func (m *VariantMutation) AddField(name string, value ent.Value) error

AddField adds the value to the field with the given name. It returns an error if the field is not defined in the schema, or if the type mismatched the field type.

func (*VariantMutation) AddPrice

func (m *VariantMutation) AddPrice(f float64)

AddPrice adds f to the "price" field.

func (*VariantMutation) AddedEdges

func (m *VariantMutation) AddedEdges() []string

AddedEdges returns all edge names that were set/added in this mutation.

func (*VariantMutation) AddedField

func (m *VariantMutation) AddedField(name string) (ent.Value, bool)

AddedField returns the numeric value that was incremented/decremented on a field with the given name. The second boolean return value indicates that this field was not set, or was not defined in the schema.

func (*VariantMutation) AddedFields

func (m *VariantMutation) AddedFields() []string

AddedFields returns all numeric fields that were incremented/decremented during this mutation.

func (*VariantMutation) AddedIDs

func (m *VariantMutation) AddedIDs(name string) []ent.Value

AddedIDs returns all IDs (to other nodes) that were added for the given edge name in this mutation.

func (*VariantMutation) AddedPrice

func (m *VariantMutation) AddedPrice() (r float64, exists bool)

AddedPrice returns the value that was added to the "price" field in this mutation.

func (*VariantMutation) ClearEdge

func (m *VariantMutation) ClearEdge(name string) error

ClearEdge clears the value of the edge with the given name. It returns an error if that edge is not defined in the schema.

func (*VariantMutation) ClearField

func (m *VariantMutation) ClearField(name string) error

ClearField clears the value of the field with the given name. It returns an error if the field is not defined in the schema.

func (*VariantMutation) ClearProduct

func (m *VariantMutation) ClearProduct()

ClearProduct clears the "product" edge to the Product entity.

func (*VariantMutation) ClearedEdges

func (m *VariantMutation) ClearedEdges() []string

ClearedEdges returns all edge names that were cleared in this mutation.

func (*VariantMutation) ClearedFields

func (m *VariantMutation) ClearedFields() []string

ClearedFields returns all nullable fields that were cleared during this mutation.

func (VariantMutation) Client

func (m VariantMutation) Client() *Client

Client returns a new `ent.Client` from the mutation. If the mutation was executed in a transaction (ent.Tx), a transactional client is returned.

func (*VariantMutation) Code

func (m *VariantMutation) Code() (r string, exists bool)

Code returns the value of the "code" field in the mutation.

func (*VariantMutation) EdgeCleared

func (m *VariantMutation) EdgeCleared(name string) bool

EdgeCleared returns a boolean which indicates if the edge with the given name was cleared in this mutation.

func (*VariantMutation) Field

func (m *VariantMutation) Field(name string) (ent.Value, bool)

Field returns the value of a field with the given name. The second boolean return value indicates that this field was not set, or was not defined in the schema.

func (*VariantMutation) FieldCleared

func (m *VariantMutation) FieldCleared(name string) bool

FieldCleared returns a boolean indicating if a field with the given name was cleared in this mutation.

func (*VariantMutation) Fields

func (m *VariantMutation) Fields() []string

Fields returns all fields that were changed during this mutation. Note that in order to get all numeric fields that were incremented/decremented, call AddedFields().

func (*VariantMutation) ID

func (m *VariantMutation) ID() (id uuid.UUID, exists bool)

ID returns the ID value in the mutation. Note that the ID is only available if it was provided to the builder.

func (*VariantMutation) Name

func (m *VariantMutation) Name() (r string, exists bool)

Name returns the value of the "name" field in the mutation.

func (*VariantMutation) OldCode

func (m *VariantMutation) OldCode(ctx context.Context) (v string, err error)

OldCode returns the old "code" field's value of the Variant entity. If the Variant object wasn't provided to the builder, the object is fetched from the database. An error is returned if the mutation operation is not UpdateOne, or the database query fails.

func (*VariantMutation) OldField

func (m *VariantMutation) OldField(ctx context.Context, name string) (ent.Value, error)

OldField returns the old value of the field from the database. An error is returned if the mutation operation is not UpdateOne, or the query to the database failed.

func (*VariantMutation) OldName

func (m *VariantMutation) OldName(ctx context.Context) (v string, err error)

OldName returns the old "name" field's value of the Variant entity. If the Variant object wasn't provided to the builder, the object is fetched from the database. An error is returned if the mutation operation is not UpdateOne, or the database query fails.

func (*VariantMutation) OldPrice

func (m *VariantMutation) OldPrice(ctx context.Context) (v float64, err error)

OldPrice returns the old "price" field's value of the Variant entity. If the Variant object wasn't provided to the builder, the object is fetched from the database. An error is returned if the mutation operation is not UpdateOne, or the database query fails.

func (*VariantMutation) Op

func (m *VariantMutation) Op() Op

Op returns the operation name.

func (*VariantMutation) Price

func (m *VariantMutation) Price() (r float64, exists bool)

Price returns the value of the "price" field in the mutation.

func (*VariantMutation) ProductCleared

func (m *VariantMutation) ProductCleared() bool

ProductCleared returns if the "product" edge to the Product entity was cleared.

func (*VariantMutation) ProductID

func (m *VariantMutation) ProductID() (id uuid.UUID, exists bool)

ProductID returns the "product" edge ID in the mutation.

func (*VariantMutation) ProductIDs

func (m *VariantMutation) ProductIDs() (ids []uuid.UUID)

ProductIDs returns the "product" edge IDs in the mutation. Note that IDs always returns len(IDs) <= 1 for unique edges, and you should use ProductID instead. It exists only for internal usage by the builders.

func (*VariantMutation) RemovedEdges

func (m *VariantMutation) RemovedEdges() []string

RemovedEdges returns all edge names that were removed in this mutation.

func (*VariantMutation) RemovedIDs

func (m *VariantMutation) RemovedIDs(name string) []ent.Value

RemovedIDs returns all IDs (to other nodes) that were removed for the edge with the given name in this mutation.

func (*VariantMutation) ResetCode

func (m *VariantMutation) ResetCode()

ResetCode resets all changes to the "code" field.

func (*VariantMutation) ResetEdge

func (m *VariantMutation) ResetEdge(name string) error

ResetEdge resets all changes to the edge with the given name in this mutation. It returns an error if the edge is not defined in the schema.

func (*VariantMutation) ResetField

func (m *VariantMutation) ResetField(name string) error

ResetField resets all changes in the mutation for the field with the given name. It returns an error if the field is not defined in the schema.

func (*VariantMutation) ResetName

func (m *VariantMutation) ResetName()

ResetName resets all changes to the "name" field.

func (*VariantMutation) ResetPrice

func (m *VariantMutation) ResetPrice()

ResetPrice resets all changes to the "price" field.

func (*VariantMutation) ResetProduct

func (m *VariantMutation) ResetProduct()

ResetProduct resets all changes to the "product" edge.

func (*VariantMutation) SetCode

func (m *VariantMutation) SetCode(s string)

SetCode sets the "code" field.

func (*VariantMutation) SetField

func (m *VariantMutation) SetField(name string, value ent.Value) error

SetField sets the value of a field with the given name. It returns an error if the field is not defined in the schema, or if the type mismatched the field type.

func (*VariantMutation) SetID

func (m *VariantMutation) SetID(id uuid.UUID)

SetID sets the value of the id field. Note that this operation is only accepted on creation of Variant entities.

func (*VariantMutation) SetName

func (m *VariantMutation) SetName(s string)

SetName sets the "name" field.

func (*VariantMutation) SetPrice

func (m *VariantMutation) SetPrice(f float64)

SetPrice sets the "price" field.

func (*VariantMutation) SetProductID

func (m *VariantMutation) SetProductID(id uuid.UUID)

SetProductID sets the "product" edge to the Product entity by id.

func (VariantMutation) Tx

func (m VariantMutation) Tx() (*Tx, error)

Tx returns an `ent.Tx` for mutations that were executed in transactions; it returns an error otherwise.

func (*VariantMutation) Type

func (m *VariantMutation) Type() string

Type returns the node type of this mutation (Variant).

type VariantQuery

type VariantQuery struct {
	// contains filtered or unexported fields
}

VariantQuery is the builder for querying Variant entities.

func (*VariantQuery) All

func (vq *VariantQuery) All(ctx context.Context) ([]*Variant, error)

All executes the query and returns a list of Variants.

func (*VariantQuery) AllX

func (vq *VariantQuery) AllX(ctx context.Context) []*Variant

AllX is like All, but panics if an error occurs.

func (*VariantQuery) Clone

func (vq *VariantQuery) Clone() *VariantQuery

Clone returns a duplicate of the VariantQuery builder, including all associated steps. It can be used to prepare common query builders and use them differently after the clone is made.

func (*VariantQuery) Count

func (vq *VariantQuery) Count(ctx context.Context) (int, error)

Count returns the count of the given query.

func (*VariantQuery) CountX

func (vq *VariantQuery) CountX(ctx context.Context) int

CountX is like Count, but panics if an error occurs.

func (*VariantQuery) Exist

func (vq *VariantQuery) Exist(ctx context.Context) (bool, error)

Exist returns true if the query has elements in the graph.

func (*VariantQuery) ExistX

func (vq *VariantQuery) ExistX(ctx context.Context) bool

ExistX is like Exist, but panics if an error occurs.

func (*VariantQuery) First

func (vq *VariantQuery) First(ctx context.Context) (*Variant, error)

First returns the first Variant entity from the query. Returns a *NotFoundError when no Variant was found.

func (*VariantQuery) FirstID

func (vq *VariantQuery) FirstID(ctx context.Context) (id uuid.UUID, err error)

FirstID returns the first Variant ID from the query. Returns a *NotFoundError when no Variant ID was found.

func (*VariantQuery) FirstIDX

func (vq *VariantQuery) FirstIDX(ctx context.Context) uuid.UUID

FirstIDX is like FirstID, but panics if an error occurs.

func (*VariantQuery) FirstX

func (vq *VariantQuery) FirstX(ctx context.Context) *Variant

FirstX is like First, but panics if an error occurs.

func (*VariantQuery) GroupBy

func (vq *VariantQuery) GroupBy(field string, fields ...string) *VariantGroupBy

GroupBy is used to group vertices by one or more fields/columns. It is often used with aggregate functions, like: count, max, mean, min, sum.

Example:

var v []struct {
	Code string `json:"code,omitempty"`
	Count int `json:"count,omitempty"`
}

client.Variant.Query().
	GroupBy(variant.FieldCode).
	Aggregate(ent.Count()).
	Scan(ctx, &v)

func (*VariantQuery) IDs

func (vq *VariantQuery) IDs(ctx context.Context) ([]uuid.UUID, error)

IDs executes the query and returns a list of Variant IDs.

func (*VariantQuery) IDsX

func (vq *VariantQuery) IDsX(ctx context.Context) []uuid.UUID

IDsX is like IDs, but panics if an error occurs.

func (*VariantQuery) Limit

func (vq *VariantQuery) Limit(limit int) *VariantQuery

Limit adds a limit step to the query.

func (*VariantQuery) Offset

func (vq *VariantQuery) Offset(offset int) *VariantQuery

Offset adds an offset step to the query.

func (*VariantQuery) Only

func (vq *VariantQuery) Only(ctx context.Context) (*Variant, error)

Only returns a single Variant entity found by the query, ensuring it only returns one. Returns a *NotSingularError when exactly one Variant entity is not found. Returns a *NotFoundError when no Variant entities are found.

func (*VariantQuery) OnlyID

func (vq *VariantQuery) OnlyID(ctx context.Context) (id uuid.UUID, err error)

OnlyID is like Only, but returns the only Variant ID in the query. Returns a *NotSingularError when exactly one Variant ID is not found. Returns a *NotFoundError when no entities are found.

func (*VariantQuery) OnlyIDX

func (vq *VariantQuery) OnlyIDX(ctx context.Context) uuid.UUID

OnlyIDX is like OnlyID, but panics if an error occurs.

func (*VariantQuery) OnlyX

func (vq *VariantQuery) OnlyX(ctx context.Context) *Variant

OnlyX is like Only, but panics if an error occurs.

func (*VariantQuery) Order

func (vq *VariantQuery) Order(o ...OrderFunc) *VariantQuery

Order adds an order step to the query.

func (*VariantQuery) QueryProduct

func (vq *VariantQuery) QueryProduct() *ProductQuery

QueryProduct chains the current query on the "product" edge.

func (*VariantQuery) Select

func (vq *VariantQuery) Select(field string, fields ...string) *VariantSelect

Select allows the selection one or more fields/columns for the given query, instead of selecting all fields in the entity.

Example:

var v []struct {
	Code string `json:"code,omitempty"`
}

client.Variant.Query().
	Select(variant.FieldCode).
	Scan(ctx, &v)

func (*VariantQuery) Where

func (vq *VariantQuery) Where(ps ...predicate.Variant) *VariantQuery

Where adds a new predicate for the VariantQuery builder.

func (*VariantQuery) WithProduct

func (vq *VariantQuery) WithProduct(opts ...func(*ProductQuery)) *VariantQuery

WithProduct tells the query-builder to eager-load the nodes that are connected to the "product" edge. The optional arguments are used to configure the query builder of the edge.

type VariantSelect

type VariantSelect struct {
	*VariantQuery
	// contains filtered or unexported fields
}

VariantSelect is the builder for selecting fields of Variant entities.

func (*VariantSelect) Bool

func (vs *VariantSelect) Bool(ctx context.Context) (_ bool, err error)

Bool returns a single bool from a selector. It is only allowed when selecting one field.

func (*VariantSelect) BoolX

func (vs *VariantSelect) BoolX(ctx context.Context) bool

BoolX is like Bool, but panics if an error occurs.

func (*VariantSelect) Bools

func (vs *VariantSelect) Bools(ctx context.Context) ([]bool, error)

Bools returns list of bools from a selector. It is only allowed when selecting one field.

func (*VariantSelect) BoolsX

func (vs *VariantSelect) BoolsX(ctx context.Context) []bool

BoolsX is like Bools, but panics if an error occurs.

func (*VariantSelect) Float64

func (vs *VariantSelect) Float64(ctx context.Context) (_ float64, err error)

Float64 returns a single float64 from a selector. It is only allowed when selecting one field.

func (*VariantSelect) Float64X

func (vs *VariantSelect) Float64X(ctx context.Context) float64

Float64X is like Float64, but panics if an error occurs.

func (*VariantSelect) Float64s

func (vs *VariantSelect) Float64s(ctx context.Context) ([]float64, error)

Float64s returns list of float64s from a selector. It is only allowed when selecting one field.

func (*VariantSelect) Float64sX

func (vs *VariantSelect) Float64sX(ctx context.Context) []float64

Float64sX is like Float64s, but panics if an error occurs.

func (*VariantSelect) Int

func (vs *VariantSelect) Int(ctx context.Context) (_ int, err error)

Int returns a single int from a selector. It is only allowed when selecting one field.

func (*VariantSelect) IntX

func (vs *VariantSelect) IntX(ctx context.Context) int

IntX is like Int, but panics if an error occurs.

func (*VariantSelect) Ints

func (vs *VariantSelect) Ints(ctx context.Context) ([]int, error)

Ints returns list of ints from a selector. It is only allowed when selecting one field.

func (*VariantSelect) IntsX

func (vs *VariantSelect) IntsX(ctx context.Context) []int

IntsX is like Ints, but panics if an error occurs.

func (*VariantSelect) Scan

func (vs *VariantSelect) Scan(ctx context.Context, v interface{}) error

Scan applies the selector query and scans the result into the given value.

func (*VariantSelect) ScanX

func (vs *VariantSelect) ScanX(ctx context.Context, v interface{})

ScanX is like Scan, but panics if an error occurs.

func (*VariantSelect) String

func (vs *VariantSelect) String(ctx context.Context) (_ string, err error)

String returns a single string from a selector. It is only allowed when selecting one field.

func (*VariantSelect) StringX

func (vs *VariantSelect) StringX(ctx context.Context) string

StringX is like String, but panics if an error occurs.

func (*VariantSelect) Strings

func (vs *VariantSelect) Strings(ctx context.Context) ([]string, error)

Strings returns list of strings from a selector. It is only allowed when selecting one field.

func (*VariantSelect) StringsX

func (vs *VariantSelect) StringsX(ctx context.Context) []string

StringsX is like Strings, but panics if an error occurs.

type VariantUpdate

type VariantUpdate struct {
	// contains filtered or unexported fields
}

VariantUpdate is the builder for updating Variant entities.

func (*VariantUpdate) AddPrice

func (vu *VariantUpdate) AddPrice(f float64) *VariantUpdate

AddPrice adds f to the "price" field.

func (*VariantUpdate) ClearProduct

func (vu *VariantUpdate) ClearProduct() *VariantUpdate

ClearProduct clears the "product" edge to the Product entity.

func (*VariantUpdate) Exec

func (vu *VariantUpdate) Exec(ctx context.Context) error

Exec executes the query.

func (*VariantUpdate) ExecX

func (vu *VariantUpdate) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

func (*VariantUpdate) Mutation

func (vu *VariantUpdate) Mutation() *VariantMutation

Mutation returns the VariantMutation object of the builder.

func (*VariantUpdate) Save

func (vu *VariantUpdate) Save(ctx context.Context) (int, error)

Save executes the query and returns the number of nodes affected by the update operation.

func (*VariantUpdate) SaveX

func (vu *VariantUpdate) SaveX(ctx context.Context) int

SaveX is like Save, but panics if an error occurs.

func (*VariantUpdate) SetCode

func (vu *VariantUpdate) SetCode(s string) *VariantUpdate

SetCode sets the "code" field.

func (*VariantUpdate) SetName

func (vu *VariantUpdate) SetName(s string) *VariantUpdate

SetName sets the "name" field.

func (*VariantUpdate) SetNillableProductID

func (vu *VariantUpdate) SetNillableProductID(id *uuid.UUID) *VariantUpdate

SetNillableProductID sets the "product" edge to the Product entity by ID if the given value is not nil.

func (*VariantUpdate) SetPrice

func (vu *VariantUpdate) SetPrice(f float64) *VariantUpdate

SetPrice sets the "price" field.

func (*VariantUpdate) SetProduct

func (vu *VariantUpdate) SetProduct(p *Product) *VariantUpdate

SetProduct sets the "product" edge to the Product entity.

func (*VariantUpdate) SetProductID

func (vu *VariantUpdate) SetProductID(id uuid.UUID) *VariantUpdate

SetProductID sets the "product" edge to the Product entity by ID.

func (*VariantUpdate) Where

func (vu *VariantUpdate) Where(ps ...predicate.Variant) *VariantUpdate

Where adds a new predicate for the VariantUpdate builder.

type VariantUpdateOne

type VariantUpdateOne struct {
	// contains filtered or unexported fields
}

VariantUpdateOne is the builder for updating a single Variant entity.

func (*VariantUpdateOne) AddPrice

func (vuo *VariantUpdateOne) AddPrice(f float64) *VariantUpdateOne

AddPrice adds f to the "price" field.

func (*VariantUpdateOne) ClearProduct

func (vuo *VariantUpdateOne) ClearProduct() *VariantUpdateOne

ClearProduct clears the "product" edge to the Product entity.

func (*VariantUpdateOne) Exec

func (vuo *VariantUpdateOne) Exec(ctx context.Context) error

Exec executes the query on the entity.

func (*VariantUpdateOne) ExecX

func (vuo *VariantUpdateOne) ExecX(ctx context.Context)

ExecX is like Exec, but panics if an error occurs.

func (*VariantUpdateOne) Mutation

func (vuo *VariantUpdateOne) Mutation() *VariantMutation

Mutation returns the VariantMutation object of the builder.

func (*VariantUpdateOne) Save

func (vuo *VariantUpdateOne) Save(ctx context.Context) (*Variant, error)

Save executes the query and returns the updated Variant entity.

func (*VariantUpdateOne) SaveX

func (vuo *VariantUpdateOne) SaveX(ctx context.Context) *Variant

SaveX is like Save, but panics if an error occurs.

func (*VariantUpdateOne) SetCode

func (vuo *VariantUpdateOne) SetCode(s string) *VariantUpdateOne

SetCode sets the "code" field.

func (*VariantUpdateOne) SetName

func (vuo *VariantUpdateOne) SetName(s string) *VariantUpdateOne

SetName sets the "name" field.

func (*VariantUpdateOne) SetNillableProductID

func (vuo *VariantUpdateOne) SetNillableProductID(id *uuid.UUID) *VariantUpdateOne

SetNillableProductID sets the "product" edge to the Product entity by ID if the given value is not nil.

func (*VariantUpdateOne) SetPrice

func (vuo *VariantUpdateOne) SetPrice(f float64) *VariantUpdateOne

SetPrice sets the "price" field.

func (*VariantUpdateOne) SetProduct

func (vuo *VariantUpdateOne) SetProduct(p *Product) *VariantUpdateOne

SetProduct sets the "product" edge to the Product entity.

func (*VariantUpdateOne) SetProductID

func (vuo *VariantUpdateOne) SetProductID(id uuid.UUID) *VariantUpdateOne

SetProductID sets the "product" edge to the Product entity by ID.

type Variants

type Variants []*Variant

Variants is a parsable slice of Variant.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL