MongoDB with μMongo ODM support for Sanic framework
Project description
MongoDB with μMongo ODM support for Sanic framework
Features
Uses motor_asyncio package for async queries to MongoDB
Good integrated with uMongo ODM, so that you can use it easily in your projects
Installation
This package should be installed using pip:
pip install sanic-mongodb-extension
Example
#!/usr/bin/env python3
from sanic import Sanic, response
from sanic_mongodb_ext import MongoDbExtension
from umongo import Instance, Document, MotorAsyncIOInstance
from umongo.fields import StringField
app = Sanic(__name__)
# Configuration for MongoDB and uMongo
app.config.update({
"MONGODB_DATABASE": "app", # Make ensure that the `app` database is really exists
"MONGODB_URI": "mongodb://root:root@mongodb:27017",
"LAZY_UMONGO": MotorAsyncIOInstance(),
})
# uMongo client is available as `app.mongodb` or `app.extensions['mongodb']`.
# The lazy client will be available as `app.lazy_mongodb` only when the database was specified,
# and which is a great choice for the structured projects.
MongoDbExtension(app)
# Describe the model
@app.lazy_umongo.register
class Artist(Document):
name = StringField(required=True, allow_none=False)
# And use it later for APIs
@app.route("/")
async def handle(request):
artist = Artist(name="A new rockstar!")
await artist.commit()
return response.json(artist.dump())
if __name__ == '__main__':
app.run(host='0.0.0.0', port=8000)
License
The sanic-mongodb-extension is published under BSD license. For more details read LICENSE file.
Real project examples
Open Matchmaking project:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for sanic-mongodb-extension-0.3.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | cae1dff832d00d0d6a7d99d965d61de3cddea69230631774316ecb9c8b70ab7f |
|
MD5 | 8d5dd8fbb6ead796aae75ddb70d515f3 |
|
BLAKE2b-256 | 38bdb278bfbbf39e0259d82028dfa182c33a0b06958992ab6b88163896734304 |
Close
Hashes for sanic_mongodb_extension-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f79909c341a5fc0ab849e46d1794130c589b5a9d452d3561e5e638b0bef68d9e |
|
MD5 | 95dd3d5478417604c97ce5498c8f2b81 |
|
BLAKE2b-256 | bd28d3d55881b5d924544ea6e0c1d3de4ca4948c3bf500baf31264866140a7d2 |