[Zope] Problem with adding items to ZClass instance

Rik Hoekstra rik.hoekstra@inghist.nl
Tue, 20 Jun 2000 10:52:59 +0200


> 
> I don't think there's anything "special" about my ZClass.  It's derived from
> Catalog Aware and ObjectManager.  I believe I reproduced it without the
> Catalog Aware and got the same results.
> 
> I'm using Andy Dustman's version of the MySQLDA and TinyTable v0.8.2.  They
> both work just fine once I get the objects in the right place.  Maybe the
> problem just happens to be with these two products, but I have no clue.
> 
> You're welcome to fetch the product at
> ftp://ftp.logicetc.com/pub/Zope/IssueTracker.zexp if you want to give it a
> look.  It's a one day throw-together port of the issue tracking system used
> by the PHP project with modifications for my own needs.
> 


OK, I downloaded it and I think I found your problem (not wure how to
remediate this, though). If you look in the source of the management
screen
http://localhost/<somefolder>/<IssueTrackerInstance>/manage_main, the
dropdown list for adding Product looks like this:

  <FORM ACTION="http://localhost/<somefolder>/<IssueTrackerInstance>/"
METHOD="GET">
  <SELECT NAME=":method"
ONCHANGE="location.href='http://localhost/testhier/blup/'+this.options[this.selectedIndex].value">
    <OPTION value="manage_workspace" DISABLED>Available Objects
      <OPTION value="manage_addProduct/OFSP/documentAdd">DTML Document
      <OPTION value="manage_addProduct/OFSP/methodAdd">DTML Method
      <OPTION value="manage_addProduct/MailHost/addMailHost_form">Mail
Host
      <OPTION value="manage_addTinyTableForm">TinyTable
      <OPTION value="manage_addProduct/OFSP/manage_addUserFolder">User
Folder
      <OPTION value="manage_addZMySQLConnectionForm">Z MySQL Database
Connection
    </SELECT>
  <INPUT TYPE="SUBMIT" VALUE=" Add ">
  </FORM>

As you see, most of the items have a manage_addProducts/.... as a start.
Not so with TinyTables and MySQLConnection. They call the
add_TinyTableForm and manage_addZMySQLConnection form. They do not
switch the namespace to manage_addProduct (not in the form). Why this is
a problem, I can't tell, but this _is_ the problem.

I'm not quite sure about the solution. Probably it's best to make a
custom manage_main form that does the right incantations for adding
products and then map this to your Contents View in the ZCLass
definition.

As a side I'd like to remark that all products should comply with the
same manage_addProduct interface, because the current situation leads to
nasty problems.

Rik