title: Find all documents in a collection with mongo go driver
body: <p>I checked out the answer <a href="https://stackoverflow.com/questions/24681047/how-do-you-select-all-records-from-a-mongodb-collection-in-golang-using-mgo">here</a> but this uses the old and unmaintained mgo. How can I find all documents in a collection using the mongo-go-driver?</p>
  
  <p>I tried passing a <code>nil</code> filter, but this does not return any documents and instead returns <code>nil</code>. I also checked the <a href="https://godoc.org/go.mongodb.org/mongo-driver/mongo" rel="noreferrer">documentation</a> but did not see any mention of returning all documents. Here is what I've tried with aforementioned result.</p>
  
  <pre><code>client, err := mongo.Connect(context.TODO(), "mongodb://localhost:27017")
  coll := client.Database("test").Collection("albums")
  if err != nil { fmt.Println(err) }
  // we can assume we're connected...right?
  fmt.Println("connected to mongodb")
  
  var results []*Album
  findOptions := options.Find()
  cursor, err := coll.Find(context.TODO(), nil, findOptions)
  if err != nil {
     fmt.Println(err) // prints 'document is nil'
  }
  </code></pre>
  
  <p>Also, I'm about confused about why I need to specify <code>findOptions</code> when I've called the <code>Find()</code> function on the collection (or do I not need to specify?).</p>