[ZPatterns] Revisiting an old question: Reusable ZPatterns applications

Steve Alexander [email protected]
Sun, 16 Sep 2001 22:01:57 +0100


Steve Spicklemire wrote:

> Hmm.... what if the actual persistent storage were separated from the 
> Rack? Steve.. didn't you cook up and External storage for Racks at some 
> point? This way the stored objects could be exported/imported using the 
> "normal" approach and the Rack (and it's PlugIns) could be updated 
> separately.


I did do this. I called it a "RemoteRack". Its internal BTree was 
actually somewhere else in the ZODB, and was resolved by 
unrestrictedTraverse, and cached in a _v_ attribute.

I'd originally planned to have either the application or the rack's data 
on a mounted ZODB filestorage. So, I'd have two filestorages; one for 
the data and one for the application.

The data and the ZCatalogs would live on the main Data.fs storage, so 
that you could undo changes to data as normal.

On updating your application you'd still probably want to repopulate 
ZCatalogs based on the ids of the persistent items in the rack.

I'm not using RemoteRack at the moment. I don't have the code to hand 
just now, and it would certainly need updating for the latest ZPatterns 
-- although the changes would be minor.

It wouldn't take much to rewrite such a thing either.

--
Steve Alexander