メモ代わり。てきとーに。 いや、ですからてきとーですって。 2年前ぐらいにPythonあたりでメールくれた方、ごめんなさい。メール紛失してしまい無視した形になってしまいました。。。

2011年3月18日金曜日

[Python][django] チュートリアルメモ6(debian lenny)

チュートリアルに従ってごちゃごちゃいじってると、、、

TemplateSyntaxErrorが起きる。

Caught an exception while rendering: coercing to Unicode: need string or buffer, long found

と言われる。

modelsの__unicode__でチュートリアルどおりやると


def __unicode__(self):
return self.id
 

と書くことになるけど、django側で表示しようとする際に
__unicode__を呼んでunicode型のものを取得しようとするんだけど
self.idってInteger型なんでunicode型ではないものを返してしまうと。

だもんで、unicode型に変換して返すんだって。

ということで、

def __unicode__(self):
return u"%s" % self.id
 

とすることで回避。
正しいかどうかは知らない。

.

0 コメント: