Hi. There's a simple code in urls.py: ============== def ls (request): import os
out_html = '' home_path = '/home/www/test-django' # subdir_path = request.GET.get ('subdir') subdir_path = 'public_html' for root, dirs, files in os.walk (os.path.join (home_path, subdir_path)): out_html += "%s<br/>\n" % root return HttpResponse (out_html) ============== There's a catalogue in "home_path/subdir_path" which name includes cyrillic symbols (фыва): $ pwd /home/www/test-django/public_html $ ls -la drwx---r-x 4 test-django test-django 111 Apr 6 20:26 . drwx--x--- 13 test-django test-django 4096 Apr 6 20:26 .. -rw-r--r-- 1 test-django test-django 201 Apr 6 17:43 .htaccess -rwxr-xr-x 1 test-django test-django 911 Apr 6 16:38 index.fcgi lrwxrwxrwx 1 test-django test-django 66 Mar 28 17:34 media -> ../ python/lib64/python2.5/site-packages/django/contrib/admin/media drwxr-xr-x 2 test-django test-django 6 Apr 6 15:48 фыва My code works correct, here's the result: $ curl -s http://test-django.example.com/ls/ /home/www/test-django/public_html <br/> /home/www/test-django/public_html/фыва<br/> But if I change "subdir_path = 'public_html'" to "subdir_path = request.GET.get ('subdir')" then the request: $ curl -s http://test-django.example.com/ls/\?subdir=public_html leads to an error: Request Method: GET Request URL: http:// test-django.example.com/ls/ Django Version: 1.0.2 final Python Version: 2.5.2 Installed Applications: ['django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites'] Installed Middleware: ('django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware') Traceback: File "/home/www/test-django/python/lib64/python2.5/ site-packages/django/core/handlers/base.py" in get_response 86. response = callback(request, *callback_args, **callback_kwargs) File "/home/www/test-django/django/demo/urls.py" in ls 40. for root, dirs, files in os.walk (os.path.join (home_path, subdir_path)): File "/usr/lib64/python2.5/os.py" in walk 293. if isdir(join(top, name)): File "/usr/lib64/python2.5/posixpath.py" in isdir 195. st = os.stat(path) Exception Type: UnicodeEncodeError at /ls/ Exception Value: 'ascii' codec can't encode characters in position 45-48: ordinal not in range(128) I don't understand it why "subdir_path" getting the same very value in one case works perfectly and in the +other fails. Django runs following the instuctions +http://docs.djangoproject.com/en/dev/howto/deployment/fastcgi/#running-django-on-a-shared-hosting-provider-wit +h-apache -- BRGDS. Alexey Vlasov. -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-us...@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.