| Line 24: |
Line 24: |
| | from project folder: | | from project folder: |
| | initialize_proyectname_db | | initialize_proyectname_db |
| | + | |
| | + | == Insert into db script == |
| | + | <source lang="python"> |
| | + | import sys |
| | + | from models import Rooms, DBSession |
| | + | from sqlalchemy import engine_from_config |
| | + | from pyramid.paster import get_appsettings, setup_logging |
| | + | |
| | + | from sqlalchemy.orm import ( |
| | + | scoped_session, |
| | + | sessionmaker, |
| | + | ) |
| | + | from zope.sqlalchemy import ZopeTransactionExtension |
| | + | |
| | + | config_uri = '../development.ini' |
| | + | setup_logging(config_uri) |
| | + | engine = engine_from_config(get_appsettings(config_uri), 'sqlalchemy.') |
| | + | |
| | + | Session = sessionmaker(bind=engine) |
| | + | session = Session() |
| | + | |
| | + | try: |
| | + | a = int(sys.argv[1]) |
| | + | except: |
| | + | print "Parametro erroneo, debe especificar id numerico", sys.argv |
| | + | exit() |
| | + | |
| | + | new = Rooms(id=a) |
| | + | |
| | + | try: |
| | + | session.add(new) |
| | + | session.commit() |
| | + | print "Insertada Room", new.id |
| | + | |
| | + | except Exception as e: |
| | + | print "Error insertando Room {romid}: {error}".format(romid=new.id, error=e) |
| | + | finally: |
| | + | session.close() |
| | + | </source> |
| | + | |
| | + | == router == |
| | + | edit __init__.py from projectnamefolder/projectnamefolder. Example: |
| | + | <source lang="python"> |
| | + | from pyramid.config import Configurator |
| | + | from sqlalchemy import engine_from_config |
| | + | |
| | + | from .models import ( |
| | + | DBSession, |
| | + | Base, |
| | + | ) |
| | + | |
| | + | |
| | + | def main(global_config, **settings): |
| | + | """ This function returns a Pyramid WSGI application. |
| | + | """ |
| | + | engine = engine_from_config(settings, 'sqlalchemy.') |
| | + | DBSession.configure(bind=engine) |
| | + | Base.metadata.bind = engine |
| | + | config = Configurator(settings=settings) |
| | + | config.include('pyramid_chameleon') |
| | + | config.add_static_view('static', 'static', cache_max_age=3600) |
| | + | config.add_route('home', '/') |
| | + | config.add_route('roms','roms/{id}') |
| | + | config.add_route('create_session','roms/{id}/sessions') |
| | + | config.scan() |
| | + | return config.make_wsgi_app() |
| | + | </source> |