Opened 8 years ago
Last modified 5 years ago
#27338 closed Cleanup/optimization
Running an AlterField to change a CharField primary key to AutoField crashes — at Initial Version
Reported by: | Tim Graham | Owned by: | nobody |
---|---|---|---|
Component: | Migrations | Version: | dev |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Accepted | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
For example: change id = models.CharField(max_length=20, primary_key=True)
to id = models.AutoField(primary_key=True)
. It generates this operation:
migrations.AlterField( model_name='foo', name='id', field=models.AutoField(primary_key=True, serialize=False), ),
Running it on PostgreSQ gives: django.db.utils.ProgrammingError: operator class "varchar_pattern_ops" does not accept data type integer
. I'm not sure if this can be made to work sensibly. Is it possible to autopopulate the AutoField
? I ran into this situation while investigating #27267.
Note:
See TracTickets
for help on using tickets.