##// END OF EJS Templates
Optimized one query, removed debug code from settings so that it is run only...
Optimized one query, removed debug code from settings so that it is run only in debug mode

File last commit:

r398:b2448061 default
r472:df52a056 default
Show More
0015_post_to_thread.py
98 lines | 5.9 KiB | text/x-python | PythonLexer
# -*- coding: utf-8 -*-
from south.utils import datetime_utils as datetime
from south.db import db
from south.v2 import DataMigration
from django.db import models
from boards import views
class Migration(DataMigration):
def forwards(self, orm):
for post in orm.Post.objects.filter(thread=None):
thread = orm.Thread.objects.create(
bump_time=post.bump_time,
last_edit_time=post.last_edit_time)
thread.replies.add(post)
post.thread_new = thread
post.save()
print str(post.thread_new.id)
for reply in post.replies.all():
thread.replies.add(reply)
reply.thread_new = thread
reply.save()
for tag in post.tags.all():
thread.tags.add(tag)
tag.threads.add(thread)
def backwards(self, orm):
pass
models = {
'boards.ban': {
'Meta': {'object_name': 'Ban'},
'can_read': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
'reason': ('django.db.models.fields.CharField', [], {'default': "'Auto'", 'max_length': '200'})
},
'boards.post': {
'Meta': {'object_name': 'Post'},
'_text_rendered': ('django.db.models.fields.TextField', [], {}),
'bump_time': ('django.db.models.fields.DateTimeField', [], {}),
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'image': ('boards.thumbs.ImageWithThumbsField', [], {'max_length': '100', 'blank': 'True'}),
'image_height': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'image_width': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
'last_edit_time': ('django.db.models.fields.DateTimeField', [], {}),
'poster_ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
'poster_user_agent': ('django.db.models.fields.TextField', [], {}),
'pub_time': ('django.db.models.fields.DateTimeField', [], {}),
'referenced_posts': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'rfp+'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['boards.Post']"}),
'replies': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'re+'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['boards.Post']"}),
'tags': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['boards.Tag']", 'symmetrical': 'False'}),
'text': ('markupfield.fields.MarkupField', [], {'rendered_field': 'True'}),
'text_markup_type': ('django.db.models.fields.CharField', [], {'default': "'markdown'", 'max_length': '30'}),
'thread': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'to': "orm['boards.Post']", 'null': 'True'}),
'thread_new': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'to': "orm['boards.Thread']", 'null': 'True'}),
'title': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
'user': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'to': "orm['boards.User']", 'null': 'True'})
},
'boards.setting': {
'Meta': {'object_name': 'Setting'},
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['boards.User']"}),
'value': ('django.db.models.fields.CharField', [], {'max_length': '50'})
},
'boards.tag': {
'Meta': {'object_name': 'Tag'},
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'linked': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['boards.Tag']", 'null': 'True', 'blank': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
'threads': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'tag+'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['boards.Thread']"})
},
'boards.thread': {
'Meta': {'object_name': 'Thread'},
'bump_time': ('django.db.models.fields.DateTimeField', [], {}),
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'last_edit_time': ('django.db.models.fields.DateTimeField', [], {}),
'replies': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'tre+'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['boards.Post']"}),
'tags': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['boards.Tag']", 'symmetrical': 'False'})
},
'boards.user': {
'Meta': {'object_name': 'User'},
'fav_tags': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['boards.Tag']", 'null': 'True', 'blank': 'True'}),
'fav_threads': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['boards.Post']"}),
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'rank': ('django.db.models.fields.IntegerField', [], {}),
'registration_time': ('django.db.models.fields.DateTimeField', [], {}),
'user_id': ('django.db.models.fields.CharField', [], {'max_length': '50'})
}
}
complete_apps = ['boards']
symmetrical = True