entc/gen: initial work for supporting uuid fields in codegen

Summary: Pull Request resolved: https://github.com/facebookincubator/ent/pull/182

Reviewed By: alexsn

Differential Revision: D18638199

fbshipit-source-id: 0de79c78b51e544486c07a004c3c8ea82e5c3398
This commit is contained in:
Ariel Mashraki
2019-11-24 07:00:37 -08:00
committed by Facebook Github Bot
parent e6c6442c84
commit 67c3fd2db9
81 changed files with 1914 additions and 94 deletions

View File

@@ -127,6 +127,7 @@ func (uc *UserCreate) sqlSave(ctx context.Context) (*User, error) {
insert.Set(user.FieldName, *value)
u.Name = *value
}
id, err := insertLastID(ctx, tx, insert.Returning(user.FieldID))
if err != nil {
return nil, rollback(tx, err)

View File

@@ -193,6 +193,7 @@ func (uu *UserUpdate) sqlSave(ctx context.Context) (n int, err error) {
return 0, err
}
defer rows.Close()
var ids []int
for rows.Next() {
var id int
@@ -211,8 +212,13 @@ func (uu *UserUpdate) sqlSave(ctx context.Context) (n int, err error) {
}
var (
res sql.Result
updater = builder.Update(user.Table).Where(sql.InInts(user.FieldID, ids...))
updater = builder.Update(user.Table)
)
idface := make([]interface{}, len(ids))
for i := range ids {
idface[i] = ids[i]
}
updater = updater.Where(sql.In(user.FieldID, idface...))
if value := uu.name; value != nil {
updater.Set(user.FieldName, *value)
}
@@ -504,6 +510,7 @@ func (uuo *UserUpdateOne) sqlSave(ctx context.Context) (u *User, err error) {
return nil, err
}
defer rows.Close()
var ids []int
for rows.Next() {
var id int
@@ -527,8 +534,13 @@ func (uuo *UserUpdateOne) sqlSave(ctx context.Context) (u *User, err error) {
}
var (
res sql.Result
updater = builder.Update(user.Table).Where(sql.InInts(user.FieldID, ids...))
updater = builder.Update(user.Table)
)
idface := make([]interface{}, len(ids))
for i := range ids {
idface[i] = ids[i]
}
updater = updater.Where(sql.In(user.FieldID, idface...))
if value := uuo.name; value != nil {
updater.Set(user.FieldName, *value)
u.Name = *value