Skip to content

Instantly share code, notes, and snippets.

@tcprescott
Created March 23, 2019 04:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tcprescott/8a9df86aea79d36f3f80327f06ea6325 to your computer and use it in GitHub Desktop.
Save tcprescott/8a9df86aea79d36f3f80327f06ea6325 to your computer and use it in GitHub Desktop.
"""models.py"""
from sqlalchemy import Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class User(Base):
__tablename__ = 'tbl_user'
id = Column(Integer, primary_key=True)
name = Column(String(50), nullable=True)
"""main.py"""
from aiomysql.sa import create_engine
from .models import User
@asyncio.coroutine
def init_db(loop):
engine = yield from create_engine(host=conf.DB_HOST,
db=conf.DB_NAME,
user=conf.DB_USER,
password=conf.DB_PASS,
loop=loop)
return engine
@asyncio.coroutine
def get_users(engine):
from sqlalchemy.orm import sessionmaker
Session = sessionmaker(bind=engine)
session = Session()
res = session.query(User).all()
for r in res:
print(r.id, r.name)
if __name__ == '__main__':
loop = asyncio.get_event_loop()
engine = loop.run_until_complete(init_db(loop=loop))
loop.run_until_complete(get_users(engine))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment