diff --git a/pkg/models/task_search.go b/pkg/models/task_search.go index ba84af68a..0425cbf5e 100644 --- a/pkg/models/task_search.go +++ b/pkg/models/task_search.go @@ -261,7 +261,9 @@ func (d *dbTaskSearcher) Search(opts *taskSearchOptions) (tasks []*Task, totalCo limit, start := getLimitFromPageIndex(opts.page, opts.perPage) cond := builder.And(builder.Or(projectIDCond, favoritesCond), where, filterCond) - query := d.s.Where(cond) + query := d.s. + Distinct("tasks.*"). + Where(cond) if limit > 0 { query = query.Limit(limit, start) } diff --git a/pkg/models/tasks.go b/pkg/models/tasks.go index b9fca067f..514020b6e 100644 --- a/pkg/models/tasks.go +++ b/pkg/models/tasks.go @@ -922,7 +922,7 @@ func (t *Task) Update(s *xorm.Session, a web.Auth) (err error) { } buckets := make(map[int64]*Bucket) - err = s.In("project_project_id", + err = s.In("project_view_id", builder.Select("id"). From("project_views"). Where(builder.Eq{"project_id": t.ProjectID}),