[Zope-dev] Re: straighting out the SQLAlchemy integration mess
Martin Aspeli
optilude at gmx.net
Fri Apr 11 03:36:43 EDT 2008
Martijn Faassen wrote:
> Andreas Jung wrote:
>> --On 10. April 2008 19:10:49 +0200 Brian Sutherland
>> <brian at vanguardistas.net> wrote:
>>> Just adding my few requirements:
>>> - Integration into the component architecture in such a way that I
>>> can specify the db connection parameters in ZCML and that database
>>> reflection still works. I want to be able to get a handle on
>>> SQLAlchemy things by calling getUtility.
>> Please *NO* database specific configurations within ZCML. We're running
>> applications in up three or four different environments and I don't want
>> to maintain instance specific configurations within ZCML. Either we pass
>> such informations through environment variables or the database
>> connections parameters are read from a configuration within the instance
>> configuration.
>
> As long as it can also be specified in the code, that way people can
> build UIs to set up the connection. Perhaps that's what you mean by a
> "configuration within the instance configuration".
The way I use collective.lead in my book is to have it look up the
database settings in a local utility. That utility is editable via a
control panel page in Plone. I suspect that it'd be quite easy to do
something similar where the settings were deferred to a global utility
configured with ZCML or looked up in a config file of some sort.
Once the config is available, it's all about calling getUtility() to get
hold of a database connection/session.
Martin
--
Author of `Professional Plone Development`, a book for developers who
want to work with Plone. See http://martinaspeli.net/plone-book
More information about the Zope-Dev
mailing list