[Zope] unicode support

Andreas Jung lists at zopyx.com
Fri Jun 27 02:42:48 EDT 2008



--On 27. Juni 2008 06:42:28 +0000 Garry Saddington 
<garry at schoolteachers.co.uk> wrote:

> On Friday 27 June 2008 05:38, Andreas Jung wrote:
>> --On 26. Juni 2008 22:05:06 +0000 Garry Saddington
>>
>> <garry at schoolteachers.co.uk> wrote:
>> > On Thursday 26 June 2008 15:12, Andreas Jung wrote:
>> >> --On 26. Juni 2008 14:09:50 +0000 Garry Saddington
>> >>
>> >> <garry at schoolteachers.co.uk> wrote:
>> >> > I am using Zope 2.9 connected to a Posgres DB via psycopg. My
>> >> > database encoding is UTF8.  I am getting the following error when
>> >> > users try to insert text in the database containing £ signs:
>> >> > ERROR: invalid byte sequence for encoding "UTF8": 0xa3
>> >> >
>> >> > This is due to the encoding of a £ sign in the text being sent to
>> >> > the DB. My question then is how do I make sure that all encodings
>> >> > submiitted from forms are in the correct UTF8 format? Regards
>> >>
>> >> Use ensure that the HTML page uses UTF-8 as encoding
>> >> (either using <meta-equiv...> within the HTML page or by sending
>> >>
>> >> content-type: text/html; charset=utf-8
>> >>
>> >> as HTTP header.
>> >
>> > I have taken this a little further after trying all suggestions in the
>> > thread with no success and looked into zope.conf, specifically:
>> >
>> ># Directive: default_zpublisher_encoding
>> >#
>> ># Description:
>> >#     This controls what character set is used to encode unicode
>> >#     data that reaches ZPublisher without any other specified encoding.
>> >#
>> ># Default: iso-8859-15
>> >#
>> ># Example:
>> >#
>> >#    default_zpublisher_encoding utf-8
>> >
>> > As my pages all report as iso-8859-15 I thought a change here would
>> > help, but this happens:
>> >
>> >   from OFS.content_types import guess_content_type
>> > Error: 'default_zpublisher_encoding' is not a known key name
>> >
>> > It works on this:  Zope Version  (Zope 2.9.0, python 2.4.2, win32)
>> >
>> > And fails on this:  Zope Version  (Zope 2.9.0-, python 2.4.5, linux2)
>>
>> Totally wrong approach modifying the zpublisher encoding here.  As said
>> you have two options:
>>
>> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
>>   with in your HTML
>>
>> . <tal:call define="dummy python: request.RESPONSE('content-type',
>> 'text/html;; charset=utf-8')" /> within your template
> And if I were to use DTML?
>


DTML? In a similar way...You know  dtml-let or something like that.
You know that stuff like 'request' 'context' etc. is available
in PythonScripts, ZPT and DTML is some way...everything is the same object.

-aj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 194 bytes
Desc: not available
Url : http://mail.zope.org/pipermail/zope/attachments/20080627/ba39b763/attachment.bin


More information about the Zope mailing list