PostgreSQL Client Mixins¶
Sprockets mixins that automatically connects to PostgreSQL using sprockets.clients.postgresql.
Handlers implementing one of the mixins should set an attribute called
DBNAME
that specifies the database name to connect to. The value of
DBNAME
will be passed into the creation of the
Session
or
TornadoSession
object.
The Session classes wrap the Queries Session
or
TornadoSession
providing
environment variable based configuration.
The environment variables should be set using the DBNAME_[VARIABLE]
format
where [VARIABLE]
is one of HOST
, PORT
, DBNAME
, USER
, and
PASSWORD
.
-
class
sprockets.mixins.postgresql.
AsyncHandlerMixin
¶ A asynchronous Tornado handler mixin for connecting to PostgreSQL. The mixin automatically creates the database session using the DBNAME attribute of the class as the database name for the
TornadoSession
object creation.Using the mixin, the name of the session attribute will be
<dbname>_session
, automatically created when initializing the object.Example:
from sprockets.mixins import postgresql from tornado import web class FooRequestHandler(postgresql.AsyncHandlerMixin, web.RequestHandler): DBNAME = 'foo' @web.asynchronous def get(self, *args, **kwargs): result = yield self.foo_session.query('SELECT * FROM bar') self.finish({'data': result.items()}) result.free()
-
class
sprockets.mixins.postgresql.
HandlerMixin
¶ A handler mixin for connecting to PostgreSQL. The mixin automatically creates the database session using the DBNAME attribute of the class as the database name for the
Session
object creation.Using the mixin, the name of the session attribute will be
<dbname>_session
, automatically created when initializing the object.Example:
from sprockets.mixins import postgresql from tornado import web class FooRequestHandler(postgresql.HandlerMixin, web.RequestHandler,): DBNAME = 'foo' def get(self, *args, **kwargs): result = self.foo_session.query('SELECT * FROM bar') self.finish({'data': result.items()})