#2337: RestController cannot handle non-ascii URLs
------------------------+---------------------------------------------------
 Reporter:  guest       |       Owner:        
     Type:  defect      |      Status:  new   
 Priority:  normal      |   Milestone:        
Component:  TurboGears  |     Version:  2.0rc1
 Severity:  major       |    Keywords:        
------------------------+---------------------------------------------------
 Having a RestController attached at /controller/, accessing
 /controller/something will fire it's get_one() method with the rest of the
 path ('something') passed as method args. This works fine when that
 something is of ascii chars. If not, we have:

 {{{
 File '/home/myself/src/myproject/myproject/lib/base.py', line 35 in
 __call__
   return TGController.__call__(self, environ, start_response)
 File '/usr/local/lib/python2.6/dist-
 packages/Pylons-0.9.7-py2.6.egg/pylons/controllers/core.py', line 217 in
 __call__
   response = self._inspect_call(self.__before__)
 File '/usr/local/lib/python2.6/dist-
 packages/Pylons-0.9.7-py2.6.egg/pylons/controllers/core.py', line 107 in
 _inspect_call
   result = self._perform_call(func, args)
 File '/usr/local/lib/python2.6/dist-
 packages/TurboGears2-2.0-py2.6.egg/tg/controllers.py', line 792 in
 _perform_call
   controller, remainder, params = self._get_routing_info(routingArgs)
 File '/usr/local/lib/python2.6/dist-
 packages/TurboGears2-2.0-py2.6.egg/tg/controllers.py', line 462 in
 _get_routing_info
   controller, remainder = _object_dispatch(self, url_path)
 File '/usr/local/lib/python2.6/dist-
 packages/TurboGears2-2.0-py2.6.egg/tg/controllers.py', line 528 in
 _object_dispatch
   return _find_restful_dispatch(obj, parent, remainder)
 File '/usr/local/lib/python2.6/dist-
 packages/TurboGears2-2.0-py2.6.egg/tg/controllers.py', line 593 in
 _find_restful_dispatch
   if remainder and hasattr(obj, remainder[0]) and remainder[0] not in
 ['new', 'edit']:
 UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2:
 ordinal not in range(128)
 }}}

 So, accessing entities with Unicode PKs via this RestController is not
 possible.

-- 
Ticket URL: <http://trac.turbogears.org/ticket/2337>
TurboGears <http://www.turbogears.org/>
TurboGears front-to-back web development

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "TurboGears Tickets" group.
This group is read-only. No posting by normal members allowed.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/turbogears-tickets?hl=en?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to