[Zope-dev] Z Classes hangup.
jhauser@ifm.uni-kiel.de
jhauser@ifm.uni-kiel.de
Tue, 11 May 1999 18:21:18 +0200 (CEST)
Don't know much about ZClasses, but can't this be solved to have an
empty property in the ZClass and set this when an new doc_a (doc_a2)
is put into an instance. index_html can then look for the value of the
property (doc_a2) or render doc_a. Just a workaround, as I think it
should be possible to do this like in the aquisition case.
__Janko
Jeff K.Hoffman writes:
> Hello,
>
> I recently posted a message on the Zope list asking a very important (to us)
> question about Z Classes, and haven't received a response, so I thought I
> would try zope-dev instead.
>
> I need to be able to create the following setup:
>
> Z Class:
> + MyBaseClass (inherits ObjectManager, isFolderish)
> Methods:
> - index_html (DTML Method)
> - doc_a (DTML Method)
> - doc_b (DTML Method)
>
> where index_html is:
>
> <!--#var doc_a-->
> <!--#var doc_b-->
>
> and doc_a is:
>
> This is Base Document A.
>
> and doc_b is:
>
> This is Base Document B.
>
> Now, when I make the following (in Zope Management interface):
>
> + / (Root Folder)
> - MyBaseClassInstance (MyBaseClass)
>
> I can browse to http://localhost/MyBaseClassInstance/index_html and see:
>
> This is Base Document A.
> This is Base Document B.
>
> So far so good. Now, here's where I am having problems. I need to override
> doc_a in the INSTANCE ONLY, like:
>
> + / (Root Folder)
> + MyBaseClassInstance (MyBaseClass)
> - doc_a (DTML Method)
>
> where doc_a is:
>
> This is Instance Document A.
>
> such that navigating to http://localhost/MyBaseClassInstance/index_html
> yields:
>
> This is Instance Document A.
> This is Base Document B.
>
> When I try to drop doc_a (DTML Method) in MyBaseClassInstance I get a "Bad
> Request" message, telling me the id doc_a is already in use. :(
>
> I don't want to have to make a new Z Class, and I don't want to mess with
> index_html or doc_b at all (though I may, in another instance, want to change
> index_html to reverse the order of doc_a and doc_b, or just redefine doc_b
> instead, etc. Each instance will be unique. Changing the base class should
> change all instances, except those which have overloaded the changed aspect.
> As I understand it, Z Classes already do this just fine.)
>
> Making a new Z Class works, but I'll end up with 300 (NOT an exageration) Z
> Classes, and my Zope Management UI will be quite ugly (plus, it will require
> all of our web developers to work in Control Panel all the time, which isn't
> the usual way of doing things.)
>
> I tried being a bad boy and patching the source such that _checkId's allow_dup
> parameter defaulted to 1, but it didn't do as I thought it would. I shouldn't
> be messing around in there, anyways, since I'm not very familiar with Zope's
> internals, yet.
>
> If only I can get this to work, my company will be using Zope on two MAJOR
> deals we just got. I can't mention names, now, but I promise DC would benefit
> from the press involved once the projects are complete.
>
> This is the only hitch in our gitty-up at the moment. How frustrating to be
> sooo close. :^) HEEELP! :^)
>
> Thanks,
>
> --jkh
>
> ____________________________________________________________________
> Get free e-mail and a permanent address at http://www.netaddress.com/?N=1
>
> _______________________________________________
> 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 )