docs: def get_collection(self, name, codec_options=None, read_preference=None,
                         write_concern=None, read_concern=None):
          """Get a :class:`~pymongo.collection.Collection` with the given name
          and options.
  
          Useful for creating a :class:`~pymongo.collection.Collection` with
          different codec options, read preference, and/or write concern from
          this :class:`Database`.
  
            >>> db.read_preference
            Primary()
            >>> coll1 = db.test
            >>> coll1.read_preference
            Primary()
            >>> from pymongo import ReadPreference
            >>> coll2 = db.get_collection(
            ...     'test', read_preference=ReadPreference.SECONDARY)
            >>> coll2.read_preference
            Secondary(tag_sets=None)
  
          :Parameters:
            - `name`: The name of the collection - a string.
            - `codec_options` (optional): An instance of
              :class:`~bson.codec_options.CodecOptions`. If ``None`` (the
              default) the :attr:`codec_options` of this :class:`Database` is
              used.
            - `read_preference` (optional): The read preference to use. If
              ``None`` (the default) the :attr:`read_preference` of this
              :class:`Database` is used. See :mod:`~pymongo.read_preferences`
              for options.
            - `write_concern` (optional): An instance of
              :class:`~pymongo.write_concern.WriteConcern`. If ``None`` (the
              default) the :attr:`write_concern` of this :class:`Database` is
              used.
            - `read_concern` (optional): An instance of
              :class:`~pymongo.read_concern.ReadConcern`. If ``None`` (the
              default) the :attr:`read_concern` of this :class:`Database` is
              used.
          """
          return Collection(
              self, name, False, codec_options, read_preference,
              write_concern, read_concern)