Manual object-to-relational persistency framework
Hello, I'm trying to use Zope without storing everything in ZODB while still having the perception of an object-oriented database. I want to control the object-to-relational mapping layer, but would like the loading and saving of objects to be automatic. Is there some way to do that using Zope? Where would I, e.g., hook into to get automatic loading/cacheing/saving of objects that weren't stored in ZODB, and where I could actually create the methods to load/save objects myself (I want to control the data structure). Regards, -- Bjorn
On Friday, 8. March 2002 09:50, Bjorn Stabell wrote:
I'm trying to use Zope without storing everything in ZODB while still having the perception of an object-oriented database. I want to control the object-to-relational mapping layer, but would like the loading and saving of objects to be automatic. Is there some way to do that using Zope?
Where would I, e.g., hook into to get automatic loading/cacheing/saving of objects that weren't stored in ZODB, and where I could actually create the methods to load/save objects myself (I want to control the data structure).
Sounds like changing the (default) backend of the ZODB. That way you use Zope with the ZODB but your objects are stored in a RDBMS too. ZODB comes with several backends (a.k.a Storages), the default FileStorage, DemoStorage, OracleStorage. The latter doing already object relational mapping to Oracle RDBMS. If you want to control the mapping, just define your own Storage (I do not know how hard it is, maybe the 'gurus' do?) and then tweak your Zope instance to use your custom Storage instead of the default FileStorage. That way you do not have to care about automatic loading/saving of your objects. Regards, Thomas -- Webmaster Innovationskolleg Theoretische Biologie http://itb.biologie.hu-berlin.de
Thomas Förster wrote:
On Friday, 8. March 2002 09:50, Bjorn Stabell wrote:
I'm trying to use Zope without storing everything in ZODB while still having the perception of an object-oriented database. I want to control the object-to-relational mapping layer, but would like the loading and saving of objects to be automatic. Is there some way to do that using Zope?
Where would I, e.g., hook into to get automatic loading/cacheing/saving of objects that weren't stored in ZODB, and where I could actually create the methods to load/save objects myself (I want to control the data structure).
If you want to control the mapping, just define your own Storage (I do not know how hard it is, maybe the 'gurus' do?) and then tweak your Zope instance to use your custom Storage instead of the default FileStorage. That way you do not have to care about automatic loading/saving of your objects.
One suggestion more: not use instead of FileStorage but in addition to main storage. You can see how external storages are mounted into ZODB as subtrees at http://www.zope.org/About (Wikis@zope.org are mounted just in that way). -- Myroslav Opyr zope.net.ua <http://zope.net.ua/> ° Ukrainian Zope Hosting e-mail: myroslav@zope.net.ua <mailto:myroslav@zope.net.ua> cell: +380 50.3174578
Bjorn Stabell writes:
I'm trying to use Zope without storing everything in ZODB while still having the perception of an object-oriented database. I want to control the object-to-relational mapping layer, but would like the loading and saving of objects to be automatic. Is there some way to do that using Zope? Maybe ZPattern?
Dieter
Thanks Dieter, I think ZPatterns is certainly worth a look. It allows you to slice-and-dice what you want to store in ZODB or RDBMS. The best part is you can develop totally in ZODB, then migrate to RDB a bit at a time (if you like) without changing your app, or your data classes. We have multiple instance of the same app mixing up ZODB, RDB, LDAP etc.. since all the wiring of data->objects is done in configurable data managers on an instance by instance basis. http://www.zope.org/Members/pje/ZPatterns for Zope-2.[45].x see also: http://www.cat-box.net/steve/TransactionAgents Three chapters of our book (www.zopeonarope.com) are devoted to implementing ZPatterns based apps. good luck! -steve On Friday, March 8, 2002, at 02:56 PM, Dieter Maurer wrote:
Bjorn Stabell writes:
I'm trying to use Zope without storing everything in ZODB while still having the perception of an object-oriented database. I want to control the object-to-relational mapping layer, but would like the loading and saving of objects to be automatic. Is there some way to do that using Zope? Maybe ZPattern?
Dieter
_______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://lists.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope )
participants (5)
-
Bjorn Stabell -
Dieter Maurer -
Myroslav Opyr -
Steve Spicklemire -
Thomas Förster