Esempio n. 1
0
func insert(store *stores.UserStore, users []*models.User) {
	printNames("Inserting: ", users...)
	for _, user := range users {
		// errors ignored for idempotence
		store.Insert(user).Execute()
	}
}
Esempio n. 2
0
func selectAll(store *stores.UserStore) {
	all, err := store.SelectAll().Execute()
	if err != nil {
		log.Fatal(err)
	}

	printNames("All Users: ", all...)
}
Esempio n. 3
0
func delete(store *stores.UserStore, user *models.User) {
	printNames("Deleting: ", user)
	existed, err := store.Delete(user.ID).Execute()
	if err != nil {
		log.Fatal(err)
	}

	if !existed {
		log.Fatal("User did not exist")
	}
}
Esempio n. 4
0
func selectAllWhere(store *stores.UserStore) {
	query := store.SelectAll().Where(func(u *models.User) bool {
		return u.Age >= 18
	})

	adults, err := query.Execute()
	if err != nil {
		log.Fatal(err)
	}

	printNames("Adults: ", adults...)
}
Esempio n. 5
0
func firstOrNil(store *stores.UserStore) {
	query := store.SelectAll().Where(func(u *models.User) bool {
		return u.Name == "Jane"
	}).FirstOrNil()

	jane, err := query.Execute()
	if err != nil {
		log.Fatal(err)
	}

	if jane == nil {
		log.Fatal("Could not find anyone named 'Jane'")
	}

	fmt.Printf("Jane is %d years old\n", jane.Age)
}