Skip to content

Commit

Permalink
Fix handling of migrations involving swappable page node
Browse files Browse the repository at this point in the history
  • Loading branch information
Sebastian Vetter committed Dec 20, 2013
1 parent 9d013e4 commit 746e686
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 29 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,35 +11,31 @@
class Migration(SchemaMigration):

def forwards(self, orm):
if FP_NODE_MODEL == 'fancypages.PageNode':
# Adding model 'PageNode'
db.create_table(u'fancypages_pagenode', (
(u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('path', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)),
('depth', self.gf('django.db.models.fields.PositiveIntegerField')()),
('numchild', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)),
('name', self.gf('django.db.models.fields.CharField')(max_length=255, db_index=True)),
('slug', self.gf('django.db.models.fields.SlugField')(max_length=255)),
('image', self.gf('django.db.models.fields.files.ImageField')(max_length=100, null=True, blank=True)),
('description', self.gf('django.db.models.fields.TextField')(blank=True)),
))
db.send_create_signal('fancypages', ['PageNode'])
# Adding model 'PageNode'
db.create_table(u'fancypages_pagenode', (
(u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('path', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255)),
('depth', self.gf('django.db.models.fields.PositiveIntegerField')()),
('numchild', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)),
('name', self.gf('django.db.models.fields.CharField')(max_length=255, db_index=True)),
('slug', self.gf('django.db.models.fields.SlugField')(max_length=255)),
('image', self.gf('django.db.models.fields.files.ImageField')(max_length=100, null=True, blank=True)),
('description', self.gf('django.db.models.fields.TextField')(blank=True)),
))
db.send_create_signal('fancypages', ['PageNode'])

if FP_PAGE_MODEL == 'fancypages.FancyPage':
# Adding field 'FancyPage.node'
db.add_column(u'fancypages_fancypage', 'node',
self.gf('django.db.models.fields.related.OneToOneField')(related_name='page', unique=True, null=True, to=orm['fancypages.PageNode']),
keep_default=False)
# Adding field 'FancyPage.node'
db.add_column(u'fancypages_fancypage', 'node',
self.gf('django.db.models.fields.related.OneToOneField')(related_name='page', unique=True, null=True, to=orm[FP_NODE_MODEL]),
keep_default=False)


def backwards(self, orm):
if FP_NODE_MODEL == 'fancypages.PageNode':
# Deleting model 'PageNode'
db.delete_table(u'fancypages_pagenode')
# Deleting model 'PageNode'
db.delete_table(u'fancypages_pagenode')

if FP_PAGE_MODEL == 'fancypages.FancyPage':
# Deleting field 'FancyPage.node'
db.delete_column(u'fancypages_fancypage', 'node_id')
# Deleting field 'FancyPage.node'
db.delete_column(u'fancypages_fancypage', 'node_id')


models = {
Expand Down Expand Up @@ -144,7 +140,7 @@ def backwards(self, orm):
'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
'keywords': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'}),
'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'page'", 'unique': 'True', 'null': 'True', 'to': "orm['fancypages.PageNode']"}),
'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'page'", 'unique': 'True', 'null': 'True', 'to': "orm['{}']".format(FP_NODE_MODEL)}),
'numchild': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
'page_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'pages'", 'null': 'True', 'to': "orm['fancypages.PageType']"}),
'path': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}),
Expand Down
2 changes: 1 addition & 1 deletion fancypages/migrations/0010_populate_new_page_node.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ def backwards(self, orm):
'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
'keywords': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'}),
'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'page'", 'unique': 'True', 'null': 'True', 'to': "orm['fancypages.PageNode']"}),
'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'page'", 'unique': 'True', 'null': 'True', 'to': "orm['{}']".format(FP_NODE_MODEL)}),
'numchild': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
'page_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'pages'", 'null': 'True', 'to': "orm['fancypages.PageType']"}),
'path': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from south.v2 import SchemaMigration
from django.db import models

from fancypages.utils import FP_PAGE_MODEL
from fancypages.utils import FP_PAGE_MODEL, FP_NODE_MODEL
from fancypages.compat import AUTH_USER_MODEL, AUTH_USER_MODEL_NAME


Expand Down Expand Up @@ -128,7 +128,7 @@ def backwards(self, orm):
'groups': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'pages'", 'symmetrical': 'False', 'to': "orm['fancypages.PageGroup']"}),
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'keywords': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'page'", 'unique': 'True', 'to': "orm['fancypages.PageNode']"}),
'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'page'", 'unique': 'True', 'null': 'True', 'to': "orm['{}']".format(FP_NODE_MODEL)}),
'page_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'pages'", 'null': 'True', 'to': "orm['fancypages.PageType']"}),
'status': ('django.db.models.fields.CharField', [], {'max_length': '15', 'blank': 'True'}),
'uuid': ('shortuuidfield.fields.ShortUUIDField', [], {'db_index': 'True', 'max_length': '22', 'blank': 'True'})
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from south.v2 import SchemaMigration
from django.db import models

from fancypages.utils import FP_NODE_MODEL
from fancypages.compat import AUTH_USER_MODEL, AUTH_USER_MODEL_NAME

class Migration(SchemaMigration):
Expand Down Expand Up @@ -141,7 +142,7 @@ def backwards(self, orm):
'groups': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'pages'", 'symmetrical': 'False', 'to': "orm['fancypages.PageGroup']"}),
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'keywords': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'page'", 'unique': 'True', 'null': 'True', 'to': u"orm['catalogue.Category']"}),
'node': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'page'", 'unique': 'True', 'null': 'True', 'to': "orm['{}']".format(FP_NODE_MODEL)}),
'page_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'pages'", 'null': 'True', 'to': "orm['fancypages.PageType']"}),
'status': ('django.db.models.fields.CharField', [], {'max_length': '15', 'blank': 'True'}),
'uuid': ('shortuuidfield.fields.ShortUUIDField', [], {'db_index': 'True', 'max_length': '22', 'blank': 'True'})
Expand Down

0 comments on commit 746e686

Please sign in to comment.