mirror of
https://github.com/ent/ent.git
synced 2026-05-24 09:31:56 +03:00
@@ -52,14 +52,14 @@ func (cc *CityCreate) Mutation() *CityMutation {
|
||||
|
||||
// Save creates the City in the database.
|
||||
func (cc *CityCreate) Save(ctx context.Context) (*City, error) {
|
||||
if err := cc.preSave(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
var (
|
||||
err error
|
||||
node *City
|
||||
)
|
||||
if len(cc.hooks) == 0 {
|
||||
if err = cc.check(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
node, err = cc.sqlSave(ctx)
|
||||
} else {
|
||||
var mut Mutator = MutateFunc(func(ctx context.Context, m Mutation) (Value, error) {
|
||||
@@ -67,6 +67,9 @@ func (cc *CityCreate) Save(ctx context.Context) (*City, error) {
|
||||
if !ok {
|
||||
return nil, fmt.Errorf("unexpected mutation type %T", m)
|
||||
}
|
||||
if err = cc.check(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
cc.mutation = mutation
|
||||
node, err = cc.sqlSave(ctx)
|
||||
mutation.done = true
|
||||
@@ -91,7 +94,8 @@ func (cc *CityCreate) SaveX(ctx context.Context) *City {
|
||||
return v
|
||||
}
|
||||
|
||||
func (cc *CityCreate) preSave() error {
|
||||
// check runs all checks and user-defined validators on the builder.
|
||||
func (cc *CityCreate) check() error {
|
||||
if _, ok := cc.mutation.Name(); !ok {
|
||||
return &ValidationError{Name: "name", err: errors.New("ent: missing required field \"name\"")}
|
||||
}
|
||||
@@ -167,13 +171,13 @@ func (ccb *CityCreateBulk) Save(ctx context.Context) ([]*City, error) {
|
||||
func(i int, root context.Context) {
|
||||
builder := ccb.builders[i]
|
||||
var mut Mutator = MutateFunc(func(ctx context.Context, m Mutation) (Value, error) {
|
||||
if err := builder.preSave(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
mutation, ok := m.(*CityMutation)
|
||||
if !ok {
|
||||
return nil, fmt.Errorf("unexpected mutation type %T", m)
|
||||
}
|
||||
if err := builder.check(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
builder.mutation = mutation
|
||||
nodes[i], specs[i] = builder.createSpec()
|
||||
var err error
|
||||
|
||||
@@ -81,7 +81,6 @@ func (cu *CityUpdate) RemoveStreets(s ...*Street) *CityUpdate {
|
||||
|
||||
// Save executes the query and returns the number of rows/vertices matched by this operation.
|
||||
func (cu *CityUpdate) Save(ctx context.Context) (int, error) {
|
||||
|
||||
var (
|
||||
err error
|
||||
affected int
|
||||
@@ -277,7 +276,6 @@ func (cuo *CityUpdateOne) RemoveStreets(s ...*Street) *CityUpdateOne {
|
||||
|
||||
// Save executes the query and returns the updated entity.
|
||||
func (cuo *CityUpdateOne) Save(ctx context.Context) (*City, error) {
|
||||
|
||||
var (
|
||||
err error
|
||||
node *City
|
||||
|
||||
@@ -56,14 +56,14 @@ func (sc *StreetCreate) Mutation() *StreetMutation {
|
||||
|
||||
// Save creates the Street in the database.
|
||||
func (sc *StreetCreate) Save(ctx context.Context) (*Street, error) {
|
||||
if err := sc.preSave(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
var (
|
||||
err error
|
||||
node *Street
|
||||
)
|
||||
if len(sc.hooks) == 0 {
|
||||
if err = sc.check(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
node, err = sc.sqlSave(ctx)
|
||||
} else {
|
||||
var mut Mutator = MutateFunc(func(ctx context.Context, m Mutation) (Value, error) {
|
||||
@@ -71,6 +71,9 @@ func (sc *StreetCreate) Save(ctx context.Context) (*Street, error) {
|
||||
if !ok {
|
||||
return nil, fmt.Errorf("unexpected mutation type %T", m)
|
||||
}
|
||||
if err = sc.check(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
sc.mutation = mutation
|
||||
node, err = sc.sqlSave(ctx)
|
||||
mutation.done = true
|
||||
@@ -95,7 +98,8 @@ func (sc *StreetCreate) SaveX(ctx context.Context) *Street {
|
||||
return v
|
||||
}
|
||||
|
||||
func (sc *StreetCreate) preSave() error {
|
||||
// check runs all checks and user-defined validators on the builder.
|
||||
func (sc *StreetCreate) check() error {
|
||||
if _, ok := sc.mutation.Name(); !ok {
|
||||
return &ValidationError{Name: "name", err: errors.New("ent: missing required field \"name\"")}
|
||||
}
|
||||
@@ -171,13 +175,13 @@ func (scb *StreetCreateBulk) Save(ctx context.Context) ([]*Street, error) {
|
||||
func(i int, root context.Context) {
|
||||
builder := scb.builders[i]
|
||||
var mut Mutator = MutateFunc(func(ctx context.Context, m Mutation) (Value, error) {
|
||||
if err := builder.preSave(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
mutation, ok := m.(*StreetMutation)
|
||||
if !ok {
|
||||
return nil, fmt.Errorf("unexpected mutation type %T", m)
|
||||
}
|
||||
if err := builder.check(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
builder.mutation = mutation
|
||||
nodes[i], specs[i] = builder.createSpec()
|
||||
var err error
|
||||
|
||||
@@ -70,7 +70,6 @@ func (su *StreetUpdate) ClearCity() *StreetUpdate {
|
||||
|
||||
// Save executes the query and returns the number of rows/vertices matched by this operation.
|
||||
func (su *StreetUpdate) Save(ctx context.Context) (int, error) {
|
||||
|
||||
var (
|
||||
err error
|
||||
affected int
|
||||
@@ -236,7 +235,6 @@ func (suo *StreetUpdateOne) ClearCity() *StreetUpdateOne {
|
||||
|
||||
// Save executes the query and returns the updated entity.
|
||||
func (suo *StreetUpdateOne) Save(ctx context.Context) (*Street, error) {
|
||||
|
||||
var (
|
||||
err error
|
||||
node *Street
|
||||
|
||||
Reference in New Issue
Block a user