a simple sanic middleware for aioorm
Project description
sanic-aioorm
===============================
version: 0.0.5
author: hsz
email: hsz1273327@gmail.com
Feature
----------------------
* simple to use, just like using flask's extension
* design to take the place of sanic-peewee
Example
-------------------------------
model.py
.. code:: python
from sanic_aioorm import AioOrm, AioModel
from peewee import Proxy, CharField
db = Proxy()
@AioOrm.regist
class User(AioModel):
username = CharField()
class Meta:
database = db
app.py
.. code:: python
from sanic import Sanic
from sanic.response import json
from sanic_aioorm import AioOrm
from ex_model import User, db
app = Sanic()
AioOrm.SetConfig(app, defaultdb="mysql://root:hsz881224@localhost:3306/test")
orm = AioOrm(app)
orm.init_proxys(defaultdb=db)
orm.create_tables(User=[{'username': "hsz"}, {'username': "jojo"}])
@app.get("/")
async def testget(request):
try:
users = await User.select()
except Exception as e:
return json({"error": str(e)})
else:
return json({"hello": [await u.to_dict() for u in users]})
@app.post("/")
async def testpost(request):
try:
users = await User.create(request.json)
except Exception as e:
return json({"error": str(e)})
else:
return json({"hello": [u.to_dict() for u in users]})
if __name__ == "__main__":
app.run(host="0.0.0.0", port=4500)
Install
--------------------------------
- ``python -m pip install sanic-aioorm``
Limitations
-----------
* only support mysql and pgsql
Project details
Release history Release notifications
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size sanic_aioorm-0.0.5-py3-none-any.whl (6.5 kB) | File type Wheel | Python version 3.6 | Upload date | Hashes View hashes |
Filename, size sanic-aioorm-0.0.5.tar.gz (5.1 kB) | File type Source | Python version None | Upload date | Hashes View hashes |
Close
Hashes for sanic_aioorm-0.0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 56d4509dd70ef6ce217f1a3869e2000b16f828c7c59811d3e350830fc3cea53a |
|
MD5 | c6625e3e4908c1ed7a8d6459b6c67653 |
|
BLAKE2-256 | 8d05a2b27b384db6aadb7194251efa0400021fda51e290708525537c3d4faf1c |