[Zope] What is the zope way to do this ?
Olivier Deckmyn
olivier.deckmyn@mail.dotcom.fr
Thu, 30 Dec 1999 14:17:02 +0100
KeyWords : Business Objects, Persistency, ZODB.
Hello all,
I've been playing with Zope for a few weeks now...I really
like it ! The problem I have is that, given a problem, I don't
know what Zope technology I should use...
Here is my problem :
I have designed a small object application with UML.
I then have implemented it in python. Only the business rules
of my application are written yet (no UI nor GUI).
The whole application source is made of 3 python files (.py).
Python objects are persistent and stored into a file using the
shelves mechanism (that I found to be very simple and handy).
I test the core of my application in the console, invoking methods
of my objects. Storage is correct, etc...
Now that I know that my application "could" work (=all the business rules
and methods have the correct behaviour), I want to access it through
the web (=make a web application). I would like to use Zope to do so.
First, I can modify my existing python code (to make it compliant with
any Zope mandatory things - that I don't know yet !).
[1 - Dealing with the Storage of my Objects]
I don't want to deal with any Relational storage directly. I would like to
go on using a full object approach : to have persistent python objects.
Use of OQL would be nice, but not mandatory for my first needs.
At last, I don't want to have to store/retrieve my objects from a SQL
database by hand...The persistent mechanism should be as easy to use
and handle as the shelves one(I don't need to use shelves in particular - I
just want an object-storage mechanism). There is no need for me to have
access to the today-existing datas (that were store in files from the
shelves mechanism).
[ 2 - Dealing with the visual HTML representation of my objects ]
I would like to have a strong frontier between the rendering of data
(=production of HTML code) and the logic of my application (=python
code that handles the life of my objects).
[ 3 - Reusability - Luxe ]
I would also like to be able to use the same python code in both
the console and web version (not mandatory).
Given this, I don't know what Zope mechanism is best for me : ZClasses ?,
ZCatalog ? External method ? Other ? Should I make a product ? Where
can I put my existing python code ? How will I deploy it to several sites ?
How do I store my business objects into ZODB ?
If I am not clear enough : you can flame me ! I will explain it again :-)
Please help !
Thanx for your support.
Olivier Deckmyn,
Paris - France.