Fix unicode handling in "gmg addmedia".

This commit is contained in:
Berker Peksag 2014-11-17 07:11:44 +02:00 committed by Matt Molyneaux
parent 9c602458d8
commit 9d85dcdf11
2 changed files with 9 additions and 4 deletions

View File

@ -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__,

View File

@ -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),