[Zope] Pass <dtml-var sequence-item> as parameter to External
Method
Tino Wildenhain
tino at wildenhain.de
Wed Oct 19 10:21:14 EDT 2005
Thomas G. Apostolou schrieb:
> Αρχικό μήνυμα από Tino Wildenhain <tino at wildenhain.de>:
>
>
>>Thomas G. Apostolou schrieb:
>>
>>>I have an External Method "CharSetConv" that get a
>>>String_To_Be_Converted, its encoding and the encoding to convert
>>
>>it
>>
>>>to.
>>>
>>>I call it like this:
>>><dtml-in sequence-item>
>>> <td><dtml-var expr="CharSetConv(_,
>>
>>'String_To_Be_Converted',
>>
>>>'ISO-8859-7', 'UTF-8')"> </td>
>>> </dtml-in>
>>>but in the place of 'String_To_Be_Converted' i want to pass
>>
>><dtml-var
>>
>>>sequence-item>, and i can not find the way to do so.
>>>i have tried to write it like:
>>><dtml-in sequence-item>
>>> <td><dtml-var expr="CharSetConv(_, '<dtml-var
>>
>>sequence-item>',
>>
>>>'ISO-8859-7', 'UTF-8')"> </td>
>>> </dtml-in>
>>>but does not work
>>>Can anyone help please?
>>
>>Well, DTML sux for a reason ;)
>>
>>but <dtml-in sequence-item> makes no sense unless you have list in
>>list.
>>
>>You dont need an external method to convert between charsets:
>>
>><dtml-var
>> expr="_['sequence-item'].decode('iso-8859-7').encode('utf-8')" >
>>
>>HTH
>>Tino
>
>
> Dear friend thanks alot fro your reply.
> I do have a lists in list
> your sugestion return an error
>
> Site error This site encountered an error trying to fulfill your
> request. The errors were:
> Error Type
> AttributeError
> Error Value
> 'NoneType' object has no attribute 'decode'
> Request made at
> 2005/10/19 17:17:03.485 GMT+3
>
> what is wrong?
Looks like you have a None object among your strings in the list.
If so, you can either do:
<dtml-if sequence-item> <dtml-var>
expr="_['sequence-item'].decode('iso-8859-7').encode('utf-8')" >
</dtml-if>
which is the quick & dirty variant, or:
<dtml-var expr="(_['sequence-item'] or
"").decode('iso-8859-7').encode('utf-8')" >
Which uses a "boolean trick".
HTH
Tino
PS: get used to python scripts where this is a lot better
to write
More information about the Zope
mailing list