func (t *Task) returnArray(it *mgo.Iter, proj *entity.Project) (ret []*entity.Task, err error) { var dt *data.Task ret = make([]*entity.Task, 0) dt = &data.Task{} for it.Next(&dt) { ret = append(ret, &entity.Task{dt.Id, dt.Title, dt.Description, dt.Done, proj}) } // in case of any error while fetching the results // set this to the return err = it.Err() return }