[Zope-dev] ZPatterns: Non-ZODB storage and Racks

Rik Hoekstra rik.hoekstra@inghist.nl
Thu, 9 Nov 2000 10:45:46 +0100


[rh]I've been following this thread. This may be a bit of a newbie question,
but it's been bugging me for a while. I see how I can store propertysheets
in Racks using ZClasses and Skinscripts, but the propertysheet term suggests
that there should always be an object that the properties are attached to.
Is that an actual ZODB object or is it the Specialist object that can
'create' virtual objects on the fly?


> It's determined by the radio button setting on the Storage tab.  If you
> neglected to set it to "loaded by accessing attribute ____" and
> fill in the
> blank, then your objects have been stored in the ZODB, as well as in the
> RDBMS.
>
Roche wrote:

Thanks.

I set "loaded by accessing attribute" to the attribute "id".  Storing items
in the RDBMS works fine.  But when I try to retrieve them with
getPersistentItemIDs() nothing is returned?  I have a skinsript method
getCustomer:

WITH getCustomerSQL(CUSTOMER_ID=self.id) COMPUTE id=CUSTOMER_ID, name=NAME

and getCustomerSQL is a SQL method.


[rh] If I read this right, this suggests that an object stored in a SQL
database and 'masquerades' as a Zope object? Or does an object always have
to exist in the ZODB (with it's own id that corresponds to the id in the RDB
or knows how to retrieve it).
In other words, does the ZPatterns framework need an 'anchor' in the ZODB to
connect it's properties to, or can you create pure virtual objects, that
retrieve all of their properties from a specialist, including the ID.

If the last is the case, could someone give an example how to implement it.
A very simple one would suffice I suppose (hope).

I hope I expressed my question clearly, 'cos this is difficult matter?

tia
Rik