Skip to content

Instantly share code, notes, and snippets.

Created March 18, 2015 23:44
What would you like to do?
type Book struct {
Title string
Author string
ISBN string
Genre string
Id string
// Creates an account and adds it to the Database
func CreateBook(book *Book) bool {
// Dial up a mongoDB session
session, err := mgo.Dial("")
if err != nil {
return false
// Opens the "library" databases, "books" collection
c := session.DB("library").C("books")
result := Book{}
// Search for the bookID, place in result.Id
err = c.Find(bson.M{"id": book.Id}).One(&result)
if result.Id != "" {
// return true because book is present in the database
// and we can say, "it's been added" without causing errors
return true
// insert the book if it is not already in the database
err = c.Insert(*book)
if err != nil {
return false
// Close session to save resources
return true
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment