3 from south.db import db
4 from south.v2 import SchemaMigration
5 from django.db import models
6 from philo.migrations import person_model, frozen_person
8 class Migration(SchemaMigration):
10 def forwards(self, orm):
12 # Adding field 'NewsletterView.feed_type'
13 db.add_column('penfield_newsletterview', 'feed_type', self.gf('django.db.models.fields.CharField')(default='application/atom+xml', max_length=50), keep_default=False)
15 # Adding field 'NewsletterView.item_title_template'
16 db.add_column('penfield_newsletterview', 'item_title_template', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='penfield_newsletterview_title_related', null=True, to=orm['philo.Template']), keep_default=False)
18 # Adding field 'NewsletterView.item_description_template'
19 db.add_column('penfield_newsletterview', 'item_description_template', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='penfield_newsletterview_description_related', null=True, to=orm['philo.Template']), keep_default=False)
21 # Adding field 'BlogView.feed_type'
22 db.add_column('penfield_blogview', 'feed_type', self.gf('django.db.models.fields.CharField')(default='atom', max_length=50), keep_default=False)
24 # Adding field 'BlogView.item_title_template'
25 db.add_column('penfield_blogview', 'item_title_template', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='penfield_blogview_title_related', null=True, to=orm['philo.Template']), keep_default=False)
27 # Adding field 'BlogView.item_description_template'
28 db.add_column('penfield_blogview', 'item_description_template', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='penfield_blogview_description_related', null=True, to=orm['philo.Template']), keep_default=False)
31 def backwards(self, orm):
33 # Deleting field 'NewsletterView.feed_type'
34 db.delete_column('penfield_newsletterview', 'feed_type')
36 # Deleting field 'NewsletterView.item_title_template'
37 db.delete_column('penfield_newsletterview', 'item_title_template_id')
39 # Deleting field 'NewsletterView.item_description_template'
40 db.delete_column('penfield_newsletterview', 'item_description_template_id')
42 # Deleting field 'BlogView.feed_type'
43 db.delete_column('penfield_blogview', 'feed_type')
45 # Deleting field 'BlogView.item_title_template'
46 db.delete_column('penfield_blogview', 'item_title_template_id')
48 # Deleting field 'BlogView.item_description_template'
49 db.delete_column('penfield_blogview', 'item_description_template_id')
54 'Meta': {'object_name': 'Group'},
55 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
56 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
57 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
60 'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
61 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
62 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
63 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
64 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
67 'Meta': {'object_name': 'User'},
68 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
69 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
70 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
71 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
72 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
73 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
74 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
75 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
76 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
77 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
78 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
79 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
80 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
82 'contenttypes.contenttype': {
83 'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
84 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
85 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
86 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
87 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
89 person_model: frozen_person,
91 'Meta': {'object_name': 'Blog'},
92 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
93 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
94 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
96 'penfield.blogentry': {
97 'Meta': {'object_name': 'BlogEntry'},
98 'author': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'blogentries'", 'to': "orm['%s']" % person_model}),
99 'blog': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'entries'", 'null': 'True', 'to': "orm['penfield.Blog']"}),
100 'content': ('django.db.models.fields.TextField', [], {}),
101 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'None'}),
102 'excerpt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
103 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
104 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
105 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'blogentries'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['philo.Tag']"}),
106 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
108 'penfield.blogview': {
109 'Meta': {'object_name': 'BlogView'},
110 'blog': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'blogviews'", 'to': "orm['penfield.Blog']"}),
111 'entries_per_page': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
112 'entry_archive_page': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_entry_archive_related'", 'null': 'True', 'to': "orm['philo.Page']"}),
113 'entry_page': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'blog_entry_related'", 'to': "orm['philo.Page']"}),
114 'entry_permalink_base': ('django.db.models.fields.CharField', [], {'default': "'entries'", 'max_length': '255'}),
115 'entry_permalink_style': ('django.db.models.fields.CharField', [], {'max_length': '1'}),
116 'feed_suffix': ('django.db.models.fields.CharField', [], {'default': "'feed'", 'max_length': '255'}),
117 'feed_type': ('django.db.models.fields.CharField', [], {'default': "'atom'", 'max_length': '50'}),
118 'feeds_enabled': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
119 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
120 'index_page': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'blog_index_related'", 'to': "orm['philo.Page']"}),
121 'item_description_template': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'penfield_blogview_description_related'", 'null': 'True', 'to': "orm['philo.Template']"}),
122 'item_title_template': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'penfield_blogview_title_related'", 'null': 'True', 'to': "orm['philo.Template']"}),
123 'tag_archive_page': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_tag_archive_related'", 'null': 'True', 'to': "orm['philo.Page']"}),
124 'tag_page': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'blog_tag_related'", 'to': "orm['philo.Page']"}),
125 'tag_permalink_base': ('django.db.models.fields.CharField', [], {'default': "'tags'", 'max_length': '255'})
127 'penfield.newsletter': {
128 'Meta': {'object_name': 'Newsletter'},
129 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
130 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
131 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
133 'penfield.newsletterarticle': {
134 'Meta': {'unique_together': "(('newsletter', 'slug'),)", 'object_name': 'NewsletterArticle'},
135 'authors': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'newsletterarticles'", 'symmetrical': 'False', 'to': "orm['%s']" % person_model}),
136 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'None'}),
137 'full_text': ('philo.models.fields.TemplateField', [], {'db_index': 'True'}),
138 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
139 'lede': ('philo.models.fields.TemplateField', [], {'null': 'True', 'blank': 'True'}),
140 'newsletter': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'articles'", 'to': "orm['penfield.Newsletter']"}),
141 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
142 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'newsletterarticles'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['philo.Tag']"}),
143 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
145 'penfield.newsletterissue': {
146 'Meta': {'unique_together': "(('newsletter', 'numbering'),)", 'object_name': 'NewsletterIssue'},
147 'articles': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'issues'", 'symmetrical': 'False', 'to': "orm['penfield.NewsletterArticle']"}),
148 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
149 'newsletter': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'issues'", 'to': "orm['penfield.Newsletter']"}),
150 'numbering': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
151 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
152 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
154 'penfield.newsletterview': {
155 'Meta': {'object_name': 'NewsletterView'},
156 'article_archive_page': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'newsletter_article_archive_related'", 'null': 'True', 'to': "orm['philo.Page']"}),
157 'article_page': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'newsletter_article_related'", 'to': "orm['philo.Page']"}),
158 'article_permalink_base': ('django.db.models.fields.CharField', [], {'default': "'articles'", 'max_length': '255'}),
159 'article_permalink_style': ('django.db.models.fields.CharField', [], {'max_length': '1'}),
160 'feed_suffix': ('django.db.models.fields.CharField', [], {'default': "'feed'", 'max_length': '255'}),
161 'feed_type': ('django.db.models.fields.CharField', [], {'default': "'atom'", 'max_length': '50'}),
162 'feeds_enabled': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
163 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
164 'index_page': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'newsletter_index_related'", 'to': "orm['philo.Page']"}),
165 'issue_archive_page': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'newsletter_issue_archive_related'", 'null': 'True', 'to': "orm['philo.Page']"}),
166 'issue_page': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'newsletter_issue_related'", 'to': "orm['philo.Page']"}),
167 'issue_permalink_base': ('django.db.models.fields.CharField', [], {'default': "'issues'", 'max_length': '255'}),
168 'item_description_template': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'penfield_newsletterview_description_related'", 'null': 'True', 'to': "orm['philo.Template']"}),
169 'item_title_template': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'penfield_newsletterview_title_related'", 'null': 'True', 'to': "orm['philo.Template']"}),
170 'newsletter': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'newsletterviews'", 'to': "orm['penfield.Newsletter']"})
173 'Meta': {'unique_together': "(('key', 'entity_content_type', 'entity_object_id'), ('value_content_type', 'value_object_id'))", 'object_name': 'Attribute'},
174 'entity_content_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'attribute_entity_set'", 'to': "orm['contenttypes.ContentType']"}),
175 'entity_object_id': ('django.db.models.fields.PositiveIntegerField', [], {}),
176 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
177 'key': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
178 'value_content_type': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'attribute_value_set'", 'null': 'True', 'to': "orm['contenttypes.ContentType']"}),
179 'value_object_id': ('django.db.models.fields.PositiveIntegerField', [], {'null': 'True', 'blank': 'True'})
182 'Meta': {'object_name': 'Node'},
183 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
184 'level': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
185 'lft': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
186 'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['philo.Node']"}),
187 'rght': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
188 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
189 'tree_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
190 'view_content_type': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'node_view_set'", 'to': "orm['contenttypes.ContentType']"}),
191 'view_object_id': ('django.db.models.fields.PositiveIntegerField', [], {})
194 'Meta': {'object_name': 'Page'},
195 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
196 'template': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'pages'", 'to': "orm['philo.Template']"}),
197 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
200 'Meta': {'object_name': 'Tag'},
201 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
202 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
203 'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '255', 'db_index': 'True'})
206 'Meta': {'object_name': 'Template'},
207 'code': ('philo.models.fields.TemplateField', [], {}),
208 'documentation': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
209 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
210 'level': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
211 'lft': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
212 'mimetype': ('django.db.models.fields.CharField', [], {'default': "'text/html'", 'max_length': '255'}),
213 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
214 'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['philo.Template']"}),
215 'rght': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
216 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'db_index': 'True'}),
217 'tree_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'})
221 complete_apps = ['penfield']