[Zope3-Users] Importing Lots of Objects

Jeff Shell eucci.group at gmail.com
Sun Jan 8 19:48:10 EST 2006


On 1/8/06, David Johnson <djohnson at jsatech.com> wrote:
> What is the best for merchants to manage the product list and content of
> their site?  I can certainly put in into an RDBMS, but what would be the
> easiest way for them to manage their offering? Should I create a portal site
> for them or should I allow them into the ZMI in some way?  Based upon the
> varied needs of the merchants, I would like to let them into the ZMI, and
> see their products as instances under their site.

It's very easy to design multiple user interfaces in Zope 3 thanks to
the skins system. You don't need to give them access to the ZMI. The
ZMI in Zope 3 is just a default skin. It exposes a lot of things that
are best used by those who understand Zope 3. You could fit custom
product management screens into it, but in my experience it's better
to build a custom interface. It's not that difficult to do.

As far as managing the data in the RDBMS from Zope 3, you can always
use SQL Methods / Scripts or just interact with the database adapters
directly and do the SQL interaction that way.

For a more object-oriented solution you can try using 'sqlos'
(SQLObject Support) which integrates the Python SQLObject system with
Zope 3.

You can still use Zope 3's schema, widgets, and form system - even if
you generate the SQL yourself. If you have a product schema like this:

class IProductInfo(Interface):
    name = zope.schema.TextLine(
        title=u"Product Name", maxlength=255, required=True)
    price = zope.schema.Float(title=u"Product Cost", required=True)

you can still use the form system to get those fields, validate the
input against the schema, and if validation succeeds, you can generate
SQL from the validated data instead of assigning it to a Python
object.

You can make a site for the merchants that is specific to their needs.
It doesn't need to be the ZMI (it would be a lot of work to integrate
into that), but it can be that kind system. All of the tools are
there. For the amount of data that you're talking about, an RDBMS is
probably better tuned to your requirements. But you can still take
full advantage of Zope 3's features even if you're not using the ZODB
as your primary storage.


More information about the Zope3-users mailing list