[Zope-dev] ZPatterns question

Steve Spicklemire steve@spvi.com
Thu, 28 Dec 2000 15:11:37 -0500 (EST)


Hi Christian,

Well, nobody else answered that I saw... so I'll take a crack
at your questions.... 

>>>>> "CS" == Christian Scholz <cs@comlounge.net> writes:

    CS> Hi there!

    CS> Finally I managed to get a basic understanding of how to do
    CS> things with ZPatterns ;-) So seems quite cool :) (and
    CS> hopefully I find some time to write some basic howto about it)

    CS> But I have some little questions:

    CS> 1. Is it possible to retrieve the set of known IDs from a
    CS> specialist?  Or would I need to add my own method to it which
    CS> does this (and change it accordingly if I switch to another
    CS> storage method)?

If you store persistently you can use the Rack's method:

"defaultRack.getPersistentItemIDs()"

but a couple of notes: 1) this returns a BTree object, not a simple
list, so you can't iterate through it in DTML. You'll need to copy
it to a simple list for that.. and 2) If you change to a different
storage you'll need to create your own method (ZSQL Method?). What I've
found is that if you have a large number of objects you'll either want
to query a Catalog, or an SQL database to get Ids that match some criteria
that limit the number of hits to something that makes sense to display 
in a browser.

    CS> 2. Is it planned to provide something like a virtual folder
    CS> which acts like a normal object manager but is controlled via
    CS> ZPatterns (so actually something like Folder with Customizer
    CS> Support just without the "anchor" in ZODB.  (would also
    CS> require some mechanism asked for in 1.)

Hmmm... I'm not sure what you're after here. Why not just use
a Specialist? In what sense do you want it to be virtual?
(Are you looking for a dynamic traversal interface that 
would allow you to map URLs to objects that are managed by
ZPatterns? Can you give an example?)

    CS> 3. Is it possible to use ZPatterns also without some exta
    CS> ZClass defined in a Product? At least if I don't need methods
    CS> for my objects but simple want to define the attribute they
    CS> know.  Would be nice as I could then hold everything together
    CS> in one place (the specialist that is) without requiring to
    CS> install something also in the Products folder of the Control
    CS> Panel.

I believe you need to either create a Python subclass, or a ZClass
subclass of DataSkin. "Raw" DataSkins don't have the right permissions
to allow for TTW access. If you're creating a 'product' anyway... just
make a 'dummy' class that you can use for storage.

    CS> That's it for now, I will keep experimenting then.. :)

Good Luck!
-steve

    CS> cheers, Christian

    CS> -- Christian Scholz MrTopf@IRC COM.lounge
    CS> http://comlounge.net/ communication & design cs@comlounge.net

    CS> _______________________________________________ Zope-Dev
    CS> maillist - Zope-Dev@zope.org
    CS> http://lists.zope.org/mailman/listinfo/zope-dev ** No cross
    CS> posts or HTML encoding!  ** (Related lists -
    CS> http://lists.zope.org/mailman/listinfo/zope-announce
    CS> http://lists.zope.org/mailman/listinfo/zope )