Maybe I'm just not getting it, but this looks really complicated for 
what it's trying to achieve (not the fault of the OP but more so because 
of the paste config stuff).

serioiusly, why not just have

appconfig.py
dburi = 'postgres://user:[EMAIL PROTECTED]/db'

database.py
import appconfig.py
engine = create_engine(appconfig.dburi)
# tables defined here

model.py
import database
#model classes defined here
model.meta.connect(database.engine)

Then if you need to use any of this in a script, it's as simple as importing 
any of these modules into your script. Just plain python. Nothing special.


Huy
> Hello,
>
> I just wasted around 5 hours trying to figure out how to run a job
> that would use pylons models/config.  I finally did it so I'm
> submitting this script here and hoping that it will be somehow
> integrated into pylons and the documentation.  I hope that as a result
> it will save other peoples time and make pylons a better experience.
>
> Regards,
>
> from sqlalchemy import *
> import leisurenow.models as model
> from paste.deploy import appconfig, config, CONFIG
> import sys
>
> config_file = sys.argv[1]
> package = sys.argv[2]
> func = sys.argv[3]
>
> conf = appconfig('config:'+config_file)
> conf.update(dict(app_conf=conf.local_conf,
> global_conf=conf.global_conf))
> CONFIG.push_process_config(conf)
> if not conf.has_key('sqlalchemy.dburi'):
>      raise KeyError("No sqlalchemy database config found!")
> print "Connecting to database %s..."%repr(conf['sqlalchemy.dburi'])
> engine = create_engine(conf['sqlalchemy.dburi'])
> model.meta.connect(engine)
>
> pkg = __import__(package, globals(), locals(), [func])
> getattr(pkg, func)()
>
>
> >   


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to