skip to navigation
skip to content

CherrypyElixir 0.5.1

Elixir plugin for cherrypy

CherrypyElixir is a cherrypy plugin that provides elixir functionalities on top of sqlalchemy , within cherrypy as a process bus plugin.


import cherrypy
import CherrypyElixir
from elixir import Entity, String, Field, OneToMany, Unicode, ManyToOne

# define models
class Person(Entity):
    name = Field(String(128))
    addresses = OneToMany('Address')

class Address(Entity):
    email = Field(Unicode(128))
    owner = ManyToOne('Person')

class Root(object):

    def index(self):
        yield '<ul>'
        for p in Person.query:
            yield '<li>'
            yield ' '
            yield ','.join([ for a in p.addresses])
            yield '</li>'
        yield '</ul>'

    def add(self,name=None,address=None):
        p = Person(name = name)
        for addr in address.split(','):

        'server.socket_host'  : '',
        'server.socket_port'  : 1919,
        'engine.elixir.on'    : True,
        'engine.elixir.echo'    : True,
        'engine.elixir.db_uri'    : 'sqlite://test.db'

if __name__ == '__main__':
    cherrypy.quickstart(Root(), '', config=_cp_config)

To access sqlalchemy’s scoped_session directly , you can use cherrypy.request.db

File Type Py Version Uploaded on Size
CherrypyElixir-0.5.1-py2.7.egg (md5, pgp) Python Egg 2.7 2012-12-23 5KB
CherrypyElixir-0.5.1.tar.gz (md5, pgp) Source 2012-12-23 3KB