[Zope] webdav and PUT_factory
    Chris Withers 
    chris at simplistix.co.uk
       
    Mon Feb 27 15:10:57 EST 2006
    
    
  
Luca Dall'Olio wrote:
> According to my past experience in java, this means "cvs" ^_^
For the rest of us, it means svn ;-)
> Should I stop using the ZMI? 
Probably. At the very least, take advantage of the webdav you seem to 
have already got working and use a normal text editor for editing your 
scripts and templates!
> Should I develop a Zope Product instead?
Probably ;-)
> Should I use fsdump instead of webdav to export from zope ?
No..
> Should I 
> use  webdav when deploying back to Zope?
Not unless you're doing all your editing via WebDAV...
> We develop inside locally installed Zope Instances, using the ZMI.
Eep, at least get a text editor going over webdav so you don't have to 
use a browser to edit your scripts and methods!
> At the end of the day, we export the work done using webdav, and this 
> works for DTML documents, DTML methods and ZSQL methods.
Okay, stop using DTML documents and methods. Use python scripts and ZPT, 
please god! ;-)
> After that, we commit inside the source code repository, using the 
> update, diff and merge features to synchronize with other developers' work.
Odd...
> We need to deploy to a Zope server in order to test the integration of 
> developers' code, so I wrote a little PUT_factory to re-create the right 
> objects, this is a snippet:
> 
>        elif ext == 'zsql':
>            from Products.ZSQLMethods.SQL import SQL
>            return SQL(name, '', 'daticonvegno', '' ,'')
>        elif ext == 'dtml':
>            from OFS.DTMLDocument import DTMLDocument
>            return DTMLDocument( '', __name__=name )
>        elif ext == 'dtmm':
>            from OFS.DTMLMethod import DTMLMethod
>            return DTMLMethod( '', __name__=name )
>        elif major == 'text':
>            from OFS.DTMLDocument import DTMLDocument
>            return OFS.DTMLDocument.DTMLDocument( '', __name__=name )
Fair enough...
> 1) you have to use extensions to make it work, otherwise you will have 
> trouble at deploy-time
Yup, but extensions are pretty handy ;-)
> 2) some additional parameters such as the connectionIds for ZSQLMethods 
> must be auto-magically chosen by the PUT_factory
Oh, yes, that's silly ;-)
> 3) what about more complex objects, such as Plone, Archetypes or 
> Openflow? should I map them all in the PUT_factory?
Ah, so you're using Plohn. Well, then you should put all you code in 
Filesystem Directory Views, it'll make it all _much_ easier for you!
You can then look to GenericSetup to handle all your workflow configs, 
etc...
> Is this the "right way" to do things in Zope? 
Nope, not given the products you're using...
> Is there any native 
> solution for Source Code Versioning and Team Management?
Not really, the "History" tab is as close as it gets...
cheers,
Chris
-- 
Simplistix - Content Management, Zope & Python Consulting
            - http://www.simplistix.co.uk
    
    
More information about the Zope
mailing list