mirror of
https://github.com/ent/ent.git
synced 2026-05-28 09:49:08 +03:00
examples: regenerate assets
This commit is contained in:
@@ -164,16 +164,11 @@ func (c *UserClient) GetX(ctx context.Context, id int) *User {
|
||||
func (c *UserClient) QuerySpouse(u *User) *UserQuery {
|
||||
query := &UserQuery{config: c.config}
|
||||
id := u.ID
|
||||
step := &sql.Step{}
|
||||
step.From.V = id
|
||||
step.From.Table = user.Table
|
||||
step.From.Column = user.FieldID
|
||||
step.To.Table = user.Table
|
||||
step.To.Column = user.FieldID
|
||||
step.Edge.Rel = sql.O2O
|
||||
step.Edge.Inverse = false
|
||||
step.Edge.Table = user.SpouseTable
|
||||
step.Edge.Columns = append(step.Edge.Columns, user.SpouseColumn)
|
||||
step := sql.NewStep(
|
||||
sql.From(user.Table, user.FieldID, id),
|
||||
sql.To(user.Table, user.FieldID),
|
||||
sql.Edge(sql.O2O, false, user.SpouseTable, user.SpouseColumn),
|
||||
)
|
||||
query.sql = sql.Neighbors(u.driver.Dialect(), step)
|
||||
|
||||
return query
|
||||
|
||||
@@ -363,16 +363,12 @@ func NameContainsFold(v string) predicate.User {
|
||||
func HasSpouse() predicate.User {
|
||||
return predicate.User(
|
||||
func(s *sql.Selector) {
|
||||
t1 := s.Table()
|
||||
builder := sql.Dialect(s.Dialect())
|
||||
s.Where(
|
||||
sql.In(
|
||||
t1.C(FieldID),
|
||||
builder.Select(SpouseColumn).
|
||||
From(builder.Table(SpouseTable)).
|
||||
Where(sql.NotNull(SpouseColumn)),
|
||||
),
|
||||
step := sql.NewStep(
|
||||
sql.From(Table, FieldID),
|
||||
sql.To(SpouseTable, FieldID),
|
||||
sql.Edge(sql.O2O, false, SpouseTable, SpouseColumn),
|
||||
)
|
||||
sql.HasNeighbors(s, step)
|
||||
},
|
||||
)
|
||||
}
|
||||
@@ -381,13 +377,16 @@ func HasSpouse() predicate.User {
|
||||
func HasSpouseWith(preds ...predicate.User) predicate.User {
|
||||
return predicate.User(
|
||||
func(s *sql.Selector) {
|
||||
builder := sql.Dialect(s.Dialect())
|
||||
t1 := s.Table()
|
||||
t2 := builder.Select(SpouseColumn).From(builder.Table(SpouseTable))
|
||||
for _, p := range preds {
|
||||
p(t2)
|
||||
}
|
||||
s.Where(sql.In(t1.C(FieldID), t2))
|
||||
step := sql.NewStep(
|
||||
sql.From(Table, FieldID),
|
||||
sql.To(Table, FieldID),
|
||||
sql.Edge(sql.O2O, false, SpouseTable, SpouseColumn),
|
||||
)
|
||||
sql.HasNeighborsWith(s, step, func(s *sql.Selector) {
|
||||
for _, p := range preds {
|
||||
p(s)
|
||||
}
|
||||
})
|
||||
},
|
||||
)
|
||||
}
|
||||
|
||||
@@ -56,16 +56,11 @@ func (uq *UserQuery) Order(o ...Order) *UserQuery {
|
||||
// QuerySpouse chains the current query on the spouse edge.
|
||||
func (uq *UserQuery) QuerySpouse() *UserQuery {
|
||||
query := &UserQuery{config: uq.config}
|
||||
step := &sql.Step{}
|
||||
step.From.V = uq.sqlQuery()
|
||||
step.From.Table = user.Table
|
||||
step.From.Column = user.FieldID
|
||||
step.To.Table = user.Table
|
||||
step.To.Column = user.FieldID
|
||||
step.Edge.Rel = sql.O2O
|
||||
step.Edge.Inverse = false
|
||||
step.Edge.Table = user.SpouseTable
|
||||
step.Edge.Columns = append(step.Edge.Columns, user.SpouseColumn)
|
||||
step := sql.NewStep(
|
||||
sql.From(user.Table, user.FieldID, uq.sqlQuery()),
|
||||
sql.To(user.Table, user.FieldID),
|
||||
sql.Edge(sql.O2O, false, user.SpouseTable, user.SpouseColumn),
|
||||
)
|
||||
query.sql = sql.SetNeighbors(uq.driver.Dialect(), step)
|
||||
return query
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user