There's a good chance this is fixed in FormEncode trunk.  Try 
easy_install FormEncode==dev

[EMAIL PROTECTED] wrote:
> Hi,
> 
> I am using pylons with formencode and international setting set to
> 'cs':
> 
> formencode.api.set_stdtranslation(domain="FormEncode",
> languages=['cs'])
> 
> However, I don't know if it's a problem between the keyboard and
> chair, I have encountered a few UnicodeErrors. For example I have an
> login form where I am simply controlling the length of login:
> 
> # a draft
> class UserController(BaseController):
>     def login(self):
>         if not len(request.params):
>             return render('/user-login.mako')
> 
>             try:
>                 form_result =
> form.LoginSchema().to_python(request.params)
> 
>             except formencode.Invalid, e:
>                 defaults = request.params
>                 errors = e.error_dict
>                 return formencode.htmlfill.render(render('/user-
> login.mako'), defaults, errors, encoding='utf-8')
> 
>         else:
>             return 'yupi'
> 
> when I call it with not set variables, it should display a
> nationalized response "type a value", but instead I get an
> UnicodeError exception in formencode/htmlfill.py:110:
> 
>>>  return cgi.escape(str(v), 1)
> exceptions.UnicodeEncodeError: 'ascii' codec can't encode character
> u'\xed' in position 4: ordinal not in range(128)
> 
> I am doing something wrong?
> 
> I found 2 "hacks" to resolve it:
> 1) patch htmlfill.py, replace line 110 with this:
> return cgi.escape(unicode(v), 1)
> 
> or (for those who are forced to use standard or old packages)
> 2) create a function and preprocess e.error_dict:
> 
> def fix_bug(exceptions):
>      ret = exceptions
> 
>      for k in ret.keys():
>          ret[k].args = unicode(exceptions[k].args).encode('utf-8')
>          ret[k].msg = unicode(exceptions[k].msg).encode('utf-8')
>          ret[k].value = unicode(exceptions[k].value).encode('utf-8')
> 
>      return ret
> 
> 
> errors = fix_bug(e.error_dict)
> 
> Any thoughts?
> 
> Karol
> > 


-- 
Ian Bicking : [EMAIL PROTECTED] : http://blog.ianbicking.org

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to