diff options
author | Berker Peksag <berker.peksag@gmail.com> | 2014-11-17 07:11:44 +0200 |
---|---|---|
committer | Matt Molyneaux <moggers87+git@moggers87.co.uk> | 2014-11-22 18:12:19 +0000 |
commit | 9d85dcdf11d3229625d1860a13db44d8d450347c (patch) | |
tree | b4f7a8ce0cbe967800fa40e79a3f3948b3df7052 | |
parent | 9c602458d830c1ebcd0ede7c14f7ddef79e2a73f (diff) | |
download | mediagoblin-9d85dcdf11d3229625d1860a13db44d8d450347c.tar.lz mediagoblin-9d85dcdf11d3229625d1860a13db44d8d450347c.tar.xz mediagoblin-9d85dcdf11d3229625d1860a13db44d8d450347c.zip |
Fix unicode handling in "gmg addmedia".
-rw-r--r-- | mediagoblin/db/models.py | 6 | ||||
-rw-r--r-- | mediagoblin/gmg_commands/addmedia.py | 7 |
2 files changed, 9 insertions, 4 deletions
diff --git a/mediagoblin/db/models.py b/mediagoblin/db/models.py index 12757eda..8f722cff 100644 --- a/mediagoblin/db/models.py +++ b/mediagoblin/db/models.py @@ -489,7 +489,11 @@ class MediaEntry(Base, MediaEntryMixin): return import_component(self.media_type + '.models:BACKREF_NAME') def __repr__(self): - safe_title = self.title.encode('ascii', 'replace') + if six.PY2: + # obj.__repr__() should return a str on Python 2 + safe_title = self.title.encode('utf-8', 'replace') + else: + safe_title = self.title return '<{classname} {id}: {title}>'.format( classname=self.__class__.__name__, diff --git a/mediagoblin/gmg_commands/addmedia.py b/mediagoblin/gmg_commands/addmedia.py index b741b96f..2aa8f96a 100644 --- a/mediagoblin/gmg_commands/addmedia.py +++ b/mediagoblin/gmg_commands/addmedia.py @@ -88,14 +88,15 @@ def addmedia(args): # this is kinda terrible if some_string is None: return None - else: - return six.text_type(some_string) + if six.PY2: + return six.text_type(some_string, 'utf-8') + return some_string try: submit_media( mg_app=app, user=user, - submitted_file=open(abs_filename, 'r'), filename=filename, + submitted_file=open(abs_filename, 'rb'), filename=filename, title=maybe_unicodeify(args.title), description=maybe_unicodeify(args.description), license=maybe_unicodeify(args.license), |