Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

handle files with non-latin characters in the filename for expenses+revenue #288

Open
tykling opened this issue Jan 20, 2019 · 0 comments
Open

Comments

@tykling
Copy link
Member

tykling commented Jan 20, 2019

Internal Server Error: /bornhack-2019/economy/expenses/add/

UnicodeEncodeError at /bornhack-2019/economy/expenses/add/
'ascii' codec can't encode character '\xe6' in position 41: ordinal not in range(128)

Request Method: POST
Request URL: http://bornhack.dk/bornhack-2019/economy/expenses/add/
Django Version: 2.1.3
Python Executable: /usr/local/virtualenv/bin/python
Python Version: 3.5.6
Python Path: ['.', '/usr/local/virtualenv/bin', '/usr/local/virtualenv/lib/python35.zip', '/usr/local/virtualenv/lib/python3.5', '/usr/local/virtualenv/lib/python3.5/plat-freebsd11', '/usr/local/virtualenv/lib/python3.5/lib-dynload', '/usr/local/lib/python3.5', '/usr/local/lib/python3.5/plat-freebsd11', '/usr/local/virtualenv/lib/python3.5/site-packages']
Server time: Sun, 20 Jan 2019 09:11:52 +0100
Installed Applications:
['django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.sites',
'channels',
'profiles',
'camps',
'shop',
'news',
'utils',
'villages',
'program',
'info',
'sponsors',
'ircbot',
'teams',
'people',
'tickets',
'bar',
'backoffice',
'events',
'rideshare',
'tokens',
'feedback',
'economy',
'allauth',
'allauth.account',
'bootstrap3',
'django_extensions',
'reversion',
'betterforms']
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware']

Traceback:

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/core/handlers/exception.py" in inner
34. response = get_response(request)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/core/handlers/base.py" in _get_response
126. response = self.process_exception_by_middleware(e, request)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/core/handlers/base.py" in _get_response
124. response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/views/generic/base.py" in view
68. return self.dispatch(request, *args, **kwargs)

File "./camps/mixins.py" in dispatch
15. return super().dispatch(request, *args, **kwargs)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/contrib/auth/mixins.py" in dispatch
85. return super().dispatch(request, *args, **kwargs)

File "./bornhack/settings.py" in monkey_patched_dispatch
22. return wrapped(*args, **kwargs)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/views/generic/base.py" in dispatch
88. return handler(request, *args, **kwargs)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/views/generic/edit.py" in post
172. return super().post(request, *args, **kwargs)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/views/generic/edit.py" in post
142. return self.form_valid(form)

File "./economy/views.py" in form_valid
91. expense.save()

File "./utils/models.py" in save
66. super().save(**kwargs)

File "./utils/models.py" in save
31. super(CleanedModel, self).save(**kwargs)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/db/models/base.py" in save
718. force_update=force_update, update_fields=update_fields)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/db/models/base.py" in save_base
748. updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/db/models/base.py" in _save_table
809. for f in non_pks]

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/db/models/base.py" in
809. for f in non_pks]

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/db/models/fields/files.py" in pre_save
288. file.save(file.name, file.file, save=False)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/db/models/fields/files.py" in save
87. self.name = self.storage.save(name, content, max_length=self.field.max_length)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/core/files/storage.py" in save
48. name = self.get_available_name(name, max_length=max_length)

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/core/files/storage.py" in get_available_name
72. while self.exists(name) or (max_length and len(name) > max_length):

File "/usr/local/virtualenv/lib/python3.5/site-packages/django/core/files/storage.py" in exists
308. return os.path.exists(self.path(name))

File "/usr/local/virtualenv/lib/python3.5/genericpath.py" in exists
19. os.stat(path)

Exception Type: UnicodeEncodeError at /bornhack-2019/economy/expenses/add/
Exception Value: 'ascii' codec can't encode character '\xe6' in position 41: ordinal not in range(128)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant