[Zope-dev] UserFolder based on an RDBMS?

Michel Pelletier michel@digicool.com
Tue, 20 Jul 1999 10:15:56 -0400


> -----Original Message-----
> From: Jeffrey A. Marshall [mailto:jam@paragon-software.com]
> Sent: Tuesday, July 20, 1999 9:52 AM
> To: zope-dev@zope.org
> Subject: [Zope-dev] UserFolder based on an RDBMS?
> 
> 
> Hello,
>   We're trying to convert a large site over to Zope which 
> makes some heavy
> use of information stored in an RDBMS and wondered if anyone 
> has done  any
> work extending the BasicUserFolder/BasicUser classes so that 
> they get their
> information from an RDBMS instead of Bobo? How about any 
> pointers to code
> which can be used as a starting point?
> 

How about a complete product?

http://www.zope.org/Download/Prereleases/UserDB

> Another question we had was if it would be possible to extend 
> acquisition
> to include properties/methods defined for the currently 
> authenticated user?
> 

What do you mean by extend?  It is possible to edit the user folder
code, or to create a ZClass which subclasses it to modify the type of
object returned by validate().  IMAPAdapter does this, it's validate()
method actually works with a low level connection manager to return a
User object which defines a whole IMAP API and a connection logic
(including connection caching and automatic connection reconstruction).
Thus, IMAP operations happen from the perspective of AUTHENTICATED_USER,
like so:

    <dtml-var standard_html_header>
      <dtml-with AUTHENTICATED_USER>
        <dtml-tree expr="imapFolderTree(REQUEST)" sort=id nowrap=1>
	    <img src=<!--#var icon>>
          <dtml-var shortname>
	    <dtml-if num>
	      (<dtml-var num>)
	    </dtml-if>
        </dtml-tree>
      </dtml-with>
    <dtml-var standard_html_footer>

imapFolderTree() is a method of the User object.

http://www.zope.org/Download/Contrib/IMAPAdapter-0.1.0-nonbin.tgz

-Michel

> This would be useful for user preferences, etc...
> 
> thanks,
>   -jeff
> 
> 
> _______________________________________________
> Zope-Dev maillist  -  Zope-Dev@zope.org
> http://www.zope.org/mailman/listinfo/zope-dev
> 
> (For non-developer, user-level issues, use the companion list,
> zope@zope.org, http://www.zope.org/mailman/listinfo/zope )
>