diff --git a/postgres/budgetservice.go b/postgres/budgetservice.go index 1c20c32..d3d8d5b 100644 --- a/postgres/budgetservice.go +++ b/postgres/budgetservice.go @@ -12,6 +12,13 @@ func (s *Repository) Budget(id string) (*budgeteer.Budget, error) { return b, nil } -func (s *Repository) BudgetsForUser(user budgeteer.User) ([]budgeteer.Budget, error) { +func (s *Repository) BudgetsForUser(user budgeteer.User) ([]*budgeteer.Budget, error) { + err := s.DB.Model(&user). + Column("user.*", "Budgets"). + Select() + if err != nil { + return nil, err + } + return user.Budgets, nil } diff --git a/user.go b/user.go index 8f9c1a8..a9fbb0b 100644 --- a/user.go +++ b/user.go @@ -6,6 +6,7 @@ type User struct { Email string Password string Name string + Budgets []*Budget } // UserService provides Methods for CRUD of Users