Opened 18 years ago
Closed 18 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 , 18 years ago
| Attachment: | comments_model.diff added |
|---|
comment:1 by , 18 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 , 18 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 , 18 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
diff file for my patch