[Django] #34653: Django (4.2.2) doesn't handle unicode characters in labels of choices

6 views
Skip to first unread message

Django

unread,
Jun 13, 2023, 7:57:44 PM6/13/23
to django-...@googlegroups.com
#34653: Django (4.2.2) doesn't handle unicode characters in labels of choices
--------------------------------------+------------------------
Reporter: Stefanos | Owner: nobody
Type: Bug | Status: new
Component: Migrations | Version: 4.2
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
--------------------------------------+------------------------
[In case it doesn't render correctly, the apostrophe in choices is unicode
character U+2019]
Consider the following model:

{{{
class Marks(models.Model):
CHOICES = [("apostrophe", "’")]

marks = models.CharField(max_length=10, choices=CHOICES)
}}}

every time that {{{django-admin makemigrations}}} is called a new
migration is created, because the autodetector detects that the field has
changed (old_field.choices, new_field.choices):

{{{
([('apostrophe', '`')], [('apostrophe', '’')])
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/34653>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Jun 13, 2023, 11:07:51 PM6/13/23
to django-...@googlegroups.com
#34653: Django (4.2.2) doesn't handle unicode characters in labels of choices
----------------------------+--------------------------------------
Reporter: Stefanos | Owner: nobody
Type: Bug | Status: closed
Component: Migrations | Version: 4.2
Severity: Normal | Resolution: invalid

Keywords: | Triage Stage: Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
----------------------------+--------------------------------------
Changes (by David Sanders):

* status: new => closed
* resolution: => invalid


Comment:

Sorry I can't reproduce this on main, here's the migration generated from
the model in the description:

{{{
# Generated by Django 5.0.dev20230612063128 on 2023-06-14 03:03

from django.db import migrations, models


class Migration(migrations.Migration):

initial = True

dependencies = []

operations = [
migrations.CreateModel(
name="Marks",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
(
"marks",
models.CharField(choices=[("apostrophe", "’")],
max_length=10),
),
],
),
]
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/34653#comment:1>

Reply all
Reply to author
Forward
0 new messages