3 from south.db import db
4 from south.v2 import SchemaMigration
5 from django.db import models
6 from philo.models import Node, Template
9 class Migration(SchemaMigration):
11 def forwards(self, orm):
13 # Adding field 'Node.lft'
14 db.add_column('philo_node', 'lft', self.gf('django.db.models.fields.PositiveIntegerField')(default=0, db_index=True), keep_default=False)
16 # Adding field 'Node.rght'
17 db.add_column('philo_node', 'rght', self.gf('django.db.models.fields.PositiveIntegerField')(default=1, db_index=True), keep_default=False)
19 # Adding field 'Node.tree_id'
20 db.add_column('philo_node', 'tree_id', self.gf('django.db.models.fields.PositiveIntegerField')(default=0, db_index=True), keep_default=False)
22 # Adding field 'Node.level'
23 db.add_column('philo_node', 'level', self.gf('django.db.models.fields.PositiveIntegerField')(default=1, db_index=True), keep_default=False)
25 # Adding field 'Template.lft'
26 db.add_column('philo_template', 'lft', self.gf('django.db.models.fields.PositiveIntegerField')(default=0, db_index=True), keep_default=False)
28 # Adding field 'Template.rght'
29 db.add_column('philo_template', 'rght', self.gf('django.db.models.fields.PositiveIntegerField')(default=1, db_index=True), keep_default=False)
31 # Adding field 'Template.tree_id'
32 db.add_column('philo_template', 'tree_id', self.gf('django.db.models.fields.PositiveIntegerField')(default=1, db_index=True), keep_default=False)
34 # Adding field 'Template.level'
35 db.add_column('philo_template', 'level', self.gf('django.db.models.fields.PositiveIntegerField')(default=1, db_index=True), keep_default=False)
38 Template._tree_manager.rebuild()
39 Node._tree_manager.rebuild()
42 def backwards(self, orm):
44 # Deleting field 'Node.lft'
45 db.delete_column('philo_node', 'lft')
47 # Deleting field 'Node.rght'
48 db.delete_column('philo_node', 'rght')
50 # Deleting field 'Node.tree_id'
51 db.delete_column('philo_node', 'tree_id')
53 # Deleting field 'Node.level'
54 db.delete_column('philo_node', 'level')
56 # Deleting field 'Template.lft'
57 db.delete_column('philo_template', 'lft')
59 # Deleting field 'Template.rght'
60 db.delete_column('philo_template', 'rght')
62 # Deleting field 'Template.tree_id'
63 db.delete_column('philo_template', 'tree_id')
65 # Deleting field 'Template.level'
66 db.delete_column('philo_template', 'level')
70 'contenttypes.contenttype': {
71 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
72 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
73 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
74 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
75 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
78 'Meta': {'unique_together': "(('key', 'entity_content_type', 'entity_object_id'), ('value_content_type', 'value_object_id'))", 'object_name': 'Attribute'},
79 'entity_content_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'attribute_entity_set'", 'to': "orm['contenttypes.ContentType']"}),
80 'entity_object_id': ('django.db.models.fields.PositiveIntegerField', [], {}),
81 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
82 'key': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
83 'value_content_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'attribute_value_set'", 'null': 'True', 'to': "orm['contenttypes.ContentType']"}),
84 'value_object_id': ('django.db.models.fields.PositiveIntegerField', [], {'null': 'True', 'blank': 'True'})
87 'Meta': {'object_name': 'Collection'},
88 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
89 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
90 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'})
92 'philo.collectionmember': {
93 'Meta': {'object_name': 'CollectionMember'},
94 'collection': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'members'", 'to': "orm['philo.Collection']"}),
95 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
96 'index': ('django.db.models.fields.PositiveIntegerField', [], {'null': 'True', 'blank': 'True'}),
97 'member_content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
98 'member_object_id': ('django.db.models.fields.PositiveIntegerField', [], {})
100 'philo.contentlet': {
101 'Meta': {'object_name': 'Contentlet'},
102 'content': ('philo.models.fields.TemplateField', [], {}),
103 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
104 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
105 'page': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'contentlets'", 'to': "orm['philo.Page']"})
107 'philo.contentreference': {
108 'Meta': {'object_name': 'ContentReference'},
109 'content_id': ('django.db.models.fields.PositiveIntegerField', [], {'null': 'True', 'blank': 'True'}),
110 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
111 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
112 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
113 'page': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'contentreferences'", 'to': "orm['philo.Page']"})
116 'Meta': {'object_name': 'File'},
117 'file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
118 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
119 'mimetype': ('django.db.models.fields.CharField', [], {'max_length': '255'})
121 'philo.foreignkeyvalue': {
122 'Meta': {'object_name': 'ForeignKeyValue'},
123 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']", 'null': 'True', 'blank': 'True'}),
124 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
125 'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'null': 'True', 'blank': 'True'})
128 'Meta': {'object_name': 'JSONValue'},
129 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
130 'value': ('philo.models.fields.JSONField', [], {})
132 'philo.manytomanyvalue': {
133 'Meta': {'object_name': 'ManyToManyValue'},
134 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']", 'null': 'True', 'blank': 'True'}),
135 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
136 'values': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['philo.ForeignKeyValue']", 'null': 'True', 'blank': 'True'})
139 'Meta': {'object_name': 'Node'},
140 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
141 'level': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
142 'lft': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
143 'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['philo.Node']"}),
144 'rght': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
145 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
146 'tree_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
147 'view_content_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'node_view_set'", 'to': "orm['contenttypes.ContentType']"}),
148 'view_object_id': ('django.db.models.fields.PositiveIntegerField', [], {})
151 'Meta': {'object_name': 'Page'},
152 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
153 'template': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'pages'", 'to': "orm['philo.Template']"}),
154 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
157 'Meta': {'object_name': 'Redirect'},
158 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
159 'status_code': ('django.db.models.fields.IntegerField', [], {'default': '302'}),
160 'target': ('django.db.models.fields.CharField', [], {'max_length': '200'})
163 'Meta': {'object_name': 'Tag'},
164 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
165 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
166 'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '255', 'db_index': 'True'})
169 'Meta': {'object_name': 'Template'},
170 'code': ('philo.models.fields.TemplateField', [], {}),
171 'documentation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
172 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
173 'level': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
174 'lft': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
175 'mimetype': ('django.db.models.fields.CharField', [], {'default': "'text/html'", 'max_length': '255'}),
176 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
177 'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['philo.Template']"}),
178 'rght': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
179 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
180 'tree_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'})
184 complete_apps = ['philo']