Changeset 5073

Show
Ignore:
Timestamp:
08/02/08 12:56:12 (5 months ago)
Author:
alberto
Message:

Integrated repoze.tm and zope.sqlalchemy

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • projects/tg.devtools/trunk/devtools/templates/turbogears/+package+/config/app_cfg.py_tmpl

    r4902 r5073  
    2222{{endif}} 
    2323 
     24{{if sqlalchemy}} 
    2425#Configure the base SQLALchemy Setup 
    2526base_config.use_sqlalchemy = True 
    2627base_config.model = {{package}}.model 
     28base_config.DBSession = {{package}}.model.DBSession 
     29{{endif}} 
    2730 
    2831{{if identity == "sqlalchemy"}} 
  • projects/tg.devtools/trunk/devtools/templates/turbogears/+package+/lib/base.py_tmpl

    r4827 r5073  
    3838        # available in environ['pylons.routes_dict'] 
    3939         
    40         {{if sqlalchemy}} 
    41         try: 
    42             return TGController.__call__(self, environ, start_response) 
    43         finally: 
    44             #after everything is done clear out the Database Session 
    45             #to eliminate possible cross request DBSession polution. 
    46             model.DBSession.remove() 
    4740        {{if identity == "sqlalchemy"}} 
    4841        tmpl_context.identity = request.environ.get('repoze.who.identity') 
    4942        {{endif}} 
    50         {{else}} 
    5143        return TGController.__call__(self, environ, start_response) 
    52         {{endif}} 
    5344 
    5445{{if identity == "sqlalchemy"}} 
  • projects/tg.devtools/trunk/devtools/templates/turbogears/+package+/model/__init__.py_tmpl

    r4849 r5073  
    22"""The application's model objects""" 
    33 
     4from zope.sqlalchemy import ZopeTransactionExtension 
    45from sqlalchemy.orm import scoped_session, sessionmaker 
    56from sqlalchemy import MetaData 
     
    89# Global session manager.  DBSession() returns the session object 
    910# appropriate for the current web request. 
    10 DBSession = scoped_session(sessionmaker(autoflush=True, autocommit=False)) 
     11maker = sessionmaker(autoflush=True, autocommit=False, 
     12                     extension=ZopeTransactionExtension()) 
     13DBSession = scoped_session(maker) 
    1114 
    1215# Global metadata. If you have multiple databases with overlapping table 
  • projects/tg.devtools/trunk/devtools/templates/turbogears/+package+/websetup.py_tmpl

    r4551 r5073  
    22import logging 
    33 
     4import transaction 
    45from paste.deploy import appconfig 
    56from pylons import config 
     
    2223    u = model.User() 
    2324    u.user_name = u'manager' 
    24     u.display_name = u'Exemple manager' 
     25    u.display_name = u'Example manager' 
    2526    u.email_address = u'manager@somedomain.com' 
    2627    u.password = u'managepass' 
     
    5455    {{endif}} 
    5556 
    56     model.DBSession.commit() 
     57    transaction.commit() 
    5758    print "Successfully setup" 
    5859    {{endif}} 
  • projects/tg.devtools/trunk/devtools/templates/turbogears/setup.py_tmpl

    r4764 r5073  
    1515    install_requires=[ 
    1616        "TurboGears2", 
    17         "ToscaWidgets >= 0.9.1" 
     17        "ToscaWidgets >= 0.9.1", 
     18        {{if sqlalchemy}} 
     19        "zope.sqlalchemy", 
     20        {{endif}} 
    1821        ], 
    1922    packages=find_packages(exclude=['ez_setup']),