Well, for one thing you didn't do CONFIG.push_process_config(...), so
not everything would work.

For another thing - if you change the pylons DB config then you have
to edit your script and change it there too - so that's evil.

And the third thing is that it took quiet some time to figure this out
for me so I think that if there was a script like this in the project
out of the box - then it could save some people a lot of time and
stress with pylons.

Regards,

On 30 Cze, 04:52, Contact 42 <[EMAIL PROTECTED]> wrote:
> 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