[Zope] variable SQL insert method
Chris Withers
chrisw@nipltd.com
Thu, 30 Mar 2000 12:25:01 +0100
(untested, and will need finishing off)
Put ALL the arguments in the ZQSL method's arguments section, but give them all defaults (eg put
myvar_name='' in the arguments section)
Now, to make sure the right ones have been supplied, you need to put in an extra level of dtml-if in
each branch of your current dtml-if, something like:
<dtml-if "tname=='supplier'">
<dtml-if "_.has_key('var1') and _.has_key('var2')">
... your insert here...
<else>
... do something to warn of the error, such as a dtml-raise
</dtml-if>
<dtml-elif ...>
...
HTH,
Chris
Allen Wallis wrote:
>
> Hi,
> I have a database with 3 tables. I would like to create a ZSQL method
> for inserting data into the tables. I started by creating a separate
> method for each table, but that seems a bit of a waste. Ideally I would
> like to have one method, "addEntry". The template would look something
> like:
>
> <dtml-if "tname=='supplier'">
> INSERT INTO <dtml-var tname> VALUES (NULL, <dtml-sqlvar sup_name
> type=string> etc...);
> <dtml-elif "tname='manufacturer'">
> INSERT INTO <dtml-var tname> VALUES (NULL, <dtml-sqlvar man_name
> type=string> etc...);
>
> </dtml-if>
>
> The problem is that I have to specify the arguments in the argument
> list, and the arguments are different for each if clause in the above
> code. Is there a way around this?
>
> thanks
> Allen
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://lists.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists -
> http://lists.zope.org/mailman/listinfo/zope-announce
> http://lists.zope.org/mailman/listinfo/zope-dev )