[Zope-DB] regarding zope database

Dieter Maurer dieter at handshake.de
Mon Jan 30 15:08:23 EST 2006


"<-bhavana ->" <hi.bhavana at gmail.com> wrote at 2006-1-30 10:27 +0700:
> ...
>How to communicate with zope database?

You use Zope (or scripts using the Zope codebase).

>the documents that we post in Plone
>have id, ya?

There are lots of "id"s around.

  The "id" used in Plone is not a universal id, but unique only
  locally in the container. Therefore, you cannot use it
  to identify and fetch an object.

  Modern Plone versions (2.1.x) have documents based on
  AT. There have a universal unique id which can be resolved
  via the "uid_catalog" into the object.
  Someone else already recommended to read the "catalog" section
  of the Zope Book (online 2.7 edition). Follow this advice!

  All persitent objects already have a "persitent id".
  It is not used at application level (as it is meaningless there).
  The persistent id is the id used by the Zope database.
  When you know the peristent id of an object, you can
  load it from ZODB *BUT* it will behave very differently
  from how you are acoustomed to. That's because you are
  *NOT* working with raw objects in Zope/Plone but with
  acquisition wrappers. A ZODB load gives you instead
  the raw object, which, among other, does not have
  a location, nor an URL nor a parent....

-- 
Dieter


More information about the Zope-DB mailing list