Opened 17 years ago
Closed 17 years ago
#5909 closed (fixed)
__repr__ methods still present in contrib.comments.models, need to be replaced by __unicode__ methods
Reported by: | prairiedogg | Owned by: | nobody |
---|---|---|---|
Component: | contrib.comments | Version: | dev |
Severity: | Keywords: | comments, unicode | |
Cc: | Triage Stage: | Ready for checkin | |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
django trunk rev: 6658
in: django.contrib.comments.models
repr method appears five times in the comments models.py file, this causes a Unicode error when users enter names or comments with non-ascii characters. Discovered on a production site when user entered their Chinese name up the creation of a new FreeComment.
I asked on the irc #django room if this sounded like a bug. It was flagged as a bug because apparently all of the repr and str methods were supposed to be replaced with unicode methods.
Assuming that this is the case I've submitted a patch of a simple find of django.contrib.comments.models which is no more than a simple search for repr, replacing all instances with unicode.
This is my first ticket, I would like to produce a unit test for this change, but am having a little trouble. If there is someone from the community who wouldn't mind giving me a little bit of help with this, I'd really enjoy submitting more complete tickets in the future and hopefully becoming an active tester for Django.
Attachments (2)
Change History (5)
by , 17 years ago
Attachment: | comments_model.diff added |
---|
comment:1 by , 17 years ago
Triage Stage: | Unreviewed → Ready for checkin |
---|
The above patch adds two tests which demonstrate the new behavior with prairiedogg's patch. According to http://www.djangoproject.com/documentation/model-api/#unicode, __unicode__
seems to be the way to do things.
comment:2 by , 17 years ago
Replacing {{repr}} with {{unicode}} is often not a particularly good solution, since the former is output for developers and the latter is targeted at a different audience. In this case, it's not a bad solution, though.
comment:3 by , 17 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
diff file for my patch