Update connection/multiple databases docs

I observed that many people were confused by this so I thought I'd make the multiple databases example more explicit
This commit is contained in:
Bastien Gérard 2019-06-04 21:47:28 +02:00 committed by GitHub
parent a18c8c0eb4
commit 048a045966
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -78,26 +78,30 @@ store the data and you can register all aliases up front if required.
Documents defined in different database Documents defined in different database
--------------------------------------- ---------------------------------------
Individual documents can also support multiple databases by providing a Individual documents can be attached to different databases by providing a
`db_alias` in their meta data. This allows :class:`~pymongo.dbref.DBRef` `db_alias` in their meta data. This allows :class:`~pymongo.dbref.DBRef`
objects to point across databases and collections. Below is an example schema, objects to point across databases and collections. Below is an example schema,
using 3 different databases to store data:: using 3 different databases to store data::
connect(alias='user-db-alias', db='user-db')
connect(alias='book-db-alias', db='book-db')
connect(alias='users-books-db-alias', db='users-books-db')
class User(Document): class User(Document):
name = StringField() name = StringField()
meta = {'db_alias': 'user-db'} meta = {'db_alias': 'user-db-alias'}
class Book(Document): class Book(Document):
name = StringField() name = StringField()
meta = {'db_alias': 'book-db'} meta = {'db_alias': 'book-db-alias'}
class AuthorBooks(Document): class AuthorBooks(Document):
author = ReferenceField(User) author = ReferenceField(User)
book = ReferenceField(Book) book = ReferenceField(Book)
meta = {'db_alias': 'users-books-db'} meta = {'db_alias': 'users-books-db-alias'}
Disconnecting an existing connection Disconnecting an existing connection