python - No Such Column After South Migration -


i had same issue user in question answer unfortunately did not resolve anything. few comments happened when followed given directions:

when tried --delete-ghost-migrations command got error

the app 'tixeng' not appear use migrations.

i moved forward directions , initialized migrations app. tried --delete-ghost-migrations again

/users/aaronpardes/dropbox/python/home_repos/squidtix/squidtix/virtualenvironments/squidtixenv/lib/python2.7/site-packages/django/utils/hashcompat.py:9: deprecationwarning:  django.utils.hashcompat deprecated; use hashlib instead   deprecationwarning)  running migrations tixeng: - nothing migrate. - loading initial data tixeng. installed 0 object(s) 0 fixture(s) 

i made changes model, , tried create new migration changes.

^c(squidtixenv)aarons-macbook-pro:squidtix aaronpardes$ ./manage.py schemamigration tixeng --auto + added field for_sale on tixeng.squidtic created 0002_auto__add_field_squidtic_for_sale.py. can apply migration with: ./manage.py migrate tixeng 

and applying migration.

/users/aaronpardes/dropbox/python/home_repos/squidtix/squidtix/virtualenvironments/squidtixenv   /lib/python2.7/site-packages/django/utils/hashcompat.py:9: deprecationwarning:   django.utils.hashcompat deprecated; use hashlib instead   deprecationwarning)  running migrations tixeng: - migrating forwards 0002_auto__add_field_squidtic_for_sale. > tixeng:0002_auto__add_field_squidtic_for_sale fatal error - following sql query failed: create table "_south_new_tixeng_squidtic"      ("date_listed" datetime not null, "event_id" integer not null, "price" integer not null, "for_sale" bool not null default 1, "id" integer primary key, "owner_id" integer) error was: table "_south_new_tixeng_squidtic" exists  ! error found during real run of migration! aborting.   ! since have database not support running  ! schema-altering statements in transactions, have had   ! leave in interim state between migrations.  ! *might* able recover with:  ! south developers regret has happened, ,  ! gently persuade consider  ! easier-to-deal-with dbms (one supports ddl transactions)  ! note: error caused migration fail further up. error in migration: tixeng:0002_auto__add_field_squidtic_for_sale databaseerror: table "_south_new_tixeng_squidtic" exists 

relevant information:

field being added: models.booleanfield(default = true)

the migration created:

# -*- coding: utf-8 -*- import datetime south.db import db south.v2 import schemamigration django.db import models   class migration(schemamigration):      def forwards(self, orm):         # adding field 'squidtic.for_sale'         db.add_column(u'tixeng_squidtic', 'for_sale',                   self.gf('django.db.models.fields.booleanfield')(default=true),                   keep_default=false)       def backwards(self, orm):         # deleting field 'squidtic.for_sale'         db.delete_column(u'tixeng_squidtic', 'for_sale')       models = {         u'accounts.myprofile': {             'meta': {'object_name': 'myprofile'},             'favourite_snack': ('django.db.models.fields.charfield', [], {'max_length': '5'}),             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'mugshot': ('django.db.models.fields.files.imagefield', [], {'max_length': '100',  'blank': 'true'}),             'privacy': ('django.db.models.fields.charfield', [], {'default': "'registered'", 'max_length': '15'}),             'user': ('django.db.models.fields.related.onetoonefield', [], {'related_name': "'my_profile'", 'unique': 'true', 'to': u"orm['auth.user']"})         },         u'auth.group': {             'meta': {'object_name': 'group'},             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'name': ('django.db.models.fields.charfield', [], {'unique': 'true', 'max_length': '80'}),             'permissions': ('django.db.models.fields.related.manytomanyfield', [], {'to': u"orm['auth.permission']", 'symmetrical': 'false', 'blank': 'true'})         },         u'auth.permission': {             'meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'permission'},             'codename': ('django.db.models.fields.charfield', [], {'max_length': '100'}),             'content_type': ('django.db.models.fields.related.foreignkey', [], {'to': u"orm['contenttypes.contenttype']"}),             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'name': ('django.db.models.fields.charfield', [], {'max_length': '50'})         },         u'auth.user': {             'meta': {'object_name': 'user'},             'date_joined': ('django.db.models.fields.datetimefield', [], {'default':   'datetime.datetime.now'}),             'email': ('django.db.models.fields.emailfield', [], {'max_length': '75', 'blank': 'true'}),             'first_name': ('django.db.models.fields.charfield', [], {'max_length': '30', 'blank': 'true'}),             'groups': ('django.db.models.fields.related.manytomanyfield', [], {'to': u"orm['auth.group']", 'symmetrical': 'false', 'blank': 'true'}),             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'is_active': ('django.db.models.fields.booleanfield', [], {'default': 'true'}),             'is_staff': ('django.db.models.fields.booleanfield', [], {'default': 'false'}),             'is_superuser': ('django.db.models.fields.booleanfield', [], {'default': 'false'}),             'last_login': ('django.db.models.fields.datetimefield', [], {'default': 'datetime.datetime.now'}),             'last_name': ('django.db.models.fields.charfield', [], {'max_length': '30', 'blank': 'true'}),             'password': ('django.db.models.fields.charfield', [], {'max_length': '128'}),             'user_permissions': ('django.db.models.fields.related.manytomanyfield', [], {'to': u"orm['auth.permission']", 'symmetrical': 'false', 'blank': 'true'}),             'username': ('django.db.models.fields.charfield', [], {'unique': 'true', 'max_length': '30'})         },         u'contenttypes.contenttype': {             'meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'contenttype', 'db_table': "'django_content_type'"},             'app_label': ('django.db.models.fields.charfield', [], {'max_length': '100'}),             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'model': ('django.db.models.fields.charfield', [], {'max_length': '100'}),             'name': ('django.db.models.fields.charfield', [], {'max_length': '100'})         },         u'tixeng.squidartist': {             'meta': {'object_name': 'squidartist'},             'artist_name': ('django.db.models.fields.charfield', [], {'max_length': '20'}),             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'name': ('django.db.models.fields.charfield', [], {'max_length': '20'})         },         u'tixeng.squidevent': {             'meta': {'object_name': 'squidevent'},             'artist': ('django.db.models.fields.related.manytomanyfield', [], {'to': u"orm['tixeng.squidartist']", 'symmetrical': 'false'}),             'event_date': ('django.db.models.fields.datetimefield', [], {}),             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'name': ('django.db.models.fields.charfield', [], {'max_length': '20'}),             'venue': ('django.db.models.fields.related.foreignkey', [], {'to': u"orm['tixeng.squidvenue']"})         },         u'tixeng.squidtic': {             'meta': {'object_name': 'squidtic'},             'date_listed': ('django.db.models.fields.datetimefield', [], {}),             'event': ('django.db.models.fields.related.foreignkey', [], {'to': u"orm['tixeng.squidevent']"}),             'for_sale': ('django.db.models.fields.booleanfield', [], {'default': 'true'}),             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'owner': ('django.db.models.fields.related.foreignkey', [], {'to': u"orm['accounts.myprofile']"}),             'price': ('django.db.models.fields.integerfield', [], {'default': '0.0'})         },         u'tixeng.squidvenue': {             'meta': {'object_name': 'squidvenue'},             u'id': ('django.db.models.fields.autofield', [], {'primary_key': 'true'}),             'name': ('django.db.models.fields.charfield', [], {'max_length': '20'}),             'street_address': ('django.db.models.fields.charfield', [], {'max_length': '20'})         }     }      complete_apps = ['tixeng'] 

i'll take educated guess: have created new model in app managed south, used syncdb create table. can add field table , how fix it.

  1. before add field, create schema migration. should create migration new model table.

  2. apply new migration --fake, not create table tell south migration done.

  3. now add field, create schema migration. should create migration adds field table.

  4. apply new migration normally, no --fake.


Comments