0

典型的なutf-8エンコーディングの問題が発生していますが、これまでのところ解決できていません。

class StatsTandE(webapp2.RequestHandler):
  def get(self):

    conn = rdbms.connect(instance=_INSTANCE_NAME, database='origami')
    cursor = conn.cursor()
    cursor.execute('SELECT ui.displayName, ui.title, ui.costCenter FROM views AS v')
    results = [[str(row[0]), str(row[1]), str(row[2])] for row in cursor.fetchall()]
    logging.info('results identified as %s', results)

    template_file_name = 'templates/stats_results.html'
    template_values = {
      'results': results,
    }

    path = os.path.join(os.path.dirname(__file__), template_file_name)
    self.response.out.write(template.render(path, template_values))
    conn.close()

私が見ているエラーは次のとおりです。

UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 4: ordinal not in range(128)

に変更str(row[0])してstr(row[0]).encode('utf-8')も機能しませんでした...

助言がありますか?

4

1 に答える 1

1

に変更str(row[0])してみてくださいunicode(row[0])

更新:他の人が述べているように:あなたはそれを使用するべきではなく、あなたがそれを必要unicodeとしない限り。str試してみてくださいrow[0], row[1], row[2]。表示する必要がある場合は、次のようにしますrow[0].encode('utf8')

于 2013-01-16T21:52:24.000 に答える