From: Diane Trout Date: Thu, 29 Jan 2015 18:21:04 +0000 (-0800) Subject: use force_text instead of force_unicode for python2/3 compatibility X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=htsworkflow.git;a=commitdiff_plain;h=914f5eb7284a7513959f47f662fb47e5dc3d2b66 use force_text instead of force_unicode for python2/3 compatibility --- diff --git a/experiments/admin.py b/experiments/admin.py index 6290dbf..4ae0060 100644 --- a/experiments/admin.py +++ b/experiments/admin.py @@ -7,7 +7,7 @@ from django.contrib.admin.widgets import FilteredSelectMultiple from django.forms import ModelForm from django.forms.fields import Field, CharField from django.forms.widgets import TextInput, Select -from django.utils.encoding import force_unicode +from django.utils.encoding import force_text from django.utils.html import escape, conditional_escape from django.utils.translation import ugettext_lazy as _ @@ -154,11 +154,11 @@ class SequencerSelect(Select): def render_options(self, choices, selected_choices): # Normalize to strings. - selected_choices = set([force_unicode(v) for v in selected_choices]) + selected_choices = set([force_text(v) for v in selected_choices]) output = [] for option_value, option_label in chain(self.choices, choices): if isinstance(option_label, (list, tuple)): - output.append(u'' % escape(force_unicode(option_value))) + output.append(u'' % escape(force_text(option_value))) for option in option_label: output.append(self.render_option(selected_choices, *option)) output.append(u'') @@ -171,11 +171,11 @@ class SequencerSelect(Select): # nested function in render_options def render_options(self, choices, selected_choices): # Normalize to strings. - selected_choices = set([force_unicode(v) for v in selected_choices]) + selected_choices = set([force_text(v) for v in selected_choices]) output = [] for option_value, option_label in chain(self.choices, choices): if isinstance(option_label, (list, tuple)): - output.append(u'' % escape(force_unicode(option_value))) + output.append(u'' % escape(force_text(option_value))) for option in option_label: output.append(self.render_option(selected_choices, *option)) output.append(u'') @@ -191,7 +191,7 @@ class SequencerSelect(Select): cssclass = "strikeout" if option_value in disabled_sequencers else '' return u'' % ( cssclass, escape(option_value), selected_html, - conditional_escape(force_unicode(option_label))) + conditional_escape(force_text(option_label))) class SequencerOptions(admin.ModelAdmin): list_display = ('name', 'active', 'isdefault', 'instrument_name', 'model')