| 904 | return nil |
| 905 | } |
| 906 | func (uq *UserQuery) loadTasks(ctx context.Context, query *TaskQuery, nodes []*User, init func(*User), assign func(*User, *Task)) error { |
| 907 | fks := make([]driver.Value, 0, len(nodes)) |
| 908 | nodeids := make(map[int]*User) |
| 909 | for i := range nodes { |
| 910 | fks = append(fks, nodes[i].ID) |
| 911 | nodeids[nodes[i].ID] = nodes[i] |
| 912 | if init != nil { |
| 913 | init(nodes[i]) |
| 914 | } |
| 915 | } |
| 916 | if len(query.ctx.Fields) > 0 { |
| 917 | query.ctx.AppendFieldOnce(task.FieldUserTasks) |
| 918 | } |
| 919 | query.Where(predicate.Task(func(s *sql.Selector) { |
| 920 | s.Where(sql.InValues(s.C(user.TasksColumn), fks...)) |
| 921 | })) |
| 922 | neighbors, err := query.All(ctx) |
| 923 | if err != nil { |
| 924 | return err |
| 925 | } |
| 926 | for _, n := range neighbors { |
| 927 | fk := n.UserTasks |
| 928 | node, ok := nodeids[fk] |
| 929 | if !ok { |
| 930 | return fmt.Errorf(`unexpected referenced foreign-key "user_tasks" returned %v for node %v`, fk, n.ID) |
| 931 | } |
| 932 | assign(node, n) |
| 933 | } |
| 934 | return nil |
| 935 | } |
| 936 | func (uq *UserQuery) loadFsevents(ctx context.Context, query *FsEventQuery, nodes []*User, init func(*User), assign func(*User, *FsEvent)) error { |
| 937 | fks := make([]driver.Value, 0, len(nodes)) |
| 938 | nodeids := make(map[int]*User) |