RE: [Zope] How can you generalize SQL methods ?
Hi Marco:
INSERT INTO <!--#var table_name--> (<!--#var field_name-->) values (<!--#sqlvar field_value type=<!--#var field_type--> -->)
where field table_name, field_name, field_value and field_type are arguments for the methon. Naturally this doesn't work. Is there any way to do something like this ?
"Unfortunately" you can't use DTML tags inside DTML tags. Your type= setting shown above is already inside a sqlvar DTML tag.
2- creating a general SELECT query.
I'd like to parametrize the name and the number of the fields shown by a SELECT mysql query. Something like
SELECT <variable_number_of_fields_of_variable_names> from <!--#var table_name-->
where table_name is an argument for the method. I've no ideas about how to implement the variable_number_of_fields_of_variable_names.
Try this: Put the list of field names in a multiple SELECT box. Make the name of the field something:list e.g., <SELECT NAME="fields_to_select:list" MULTIPLE> Then you can say: SELECT <!--#in fields_to_select--> <!--#var sequence-item--> <!--#if sequence-end--> <!--#else--> , <!--#/if--> <!--#/in --> FROM <!--#var table_name--> The <!--#in --> is relatively straightforward. The <!--#if--> is necessary to not produce a trailing comma after the LAST field name. sequence-end is true if there are no more items in the sequence. If there are, then a comma is inserted. Of course all of this is untested! Hope this helps! --Rob
participants (1)
-
Rob Page