#29592: Error Migrate When Deleting Empty Model
-------------------------------------+-------------------------------------
               Reporter:  Jauhar     |          Owner:  nobody
  Arifin                             |
                   Type:  Bug        |         Status:  new
              Component:             |        Version:  2.0
  Migrations                         |
               Severity:  Normal     |       Keywords:  migrations, sqlite
           Triage Stage:             |      Has patch:  0
  Unreviewed                         |
    Needs documentation:  0          |    Needs tests:  0
Patch needs improvement:  0          |  Easy pickings:  0
                  UI/UX:  0          |
-------------------------------------+-------------------------------------
 Consider we have the following model:


 {{{
 class Animal(models.Model):
     name = models.CharField("Name", max_length=256)
     age = models.IntegerField("Age")

 class Cat(Animal):
     pass

 class Dog(Animal):
     pass

 }}}

 Lets say, Cat and Dog model don't have fields yet because we don't know
 yet the requirements. We create migrations first to start working with
 this simple model. But, someday we realize that Dog model is no longer
 needed, so we need to delete it. The model became like this:

 {{{
 class Animal(models.Model):
     name = models.CharField("Name", max_length=256)
     age = models.IntegerField("Age")

 class Cat(Animal):
     pass
 }}}

 And then, we need to make migrations again. But, after make migrations, I
 found that there is an error when migrating. The migrations strategy
 somehow need to rename the table to myapp_dog__old, then create new table
 myapp_dog, and then copy all records in myapp_dog__old to myapp_dog. It
 raise error when using sqlite becase the SQL query looks like this:


 {{{
 INSERT INTO "myapp_dog" () SELECT  FROM "myapp_dog__old"
 }}}

 This happens because dog model has no fields.

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

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/055.2c77b55efabdf3d7b4f0af487f39934a%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to