0037_auto__add_warnlevel.py 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514
  1. # -*- coding: utf-8 -*-
  2. from south.utils import datetime_utils as datetime
  3. from south.db import db
  4. from south.v2 import SchemaMigration
  5. from django.db import models
  6. class Migration(SchemaMigration):
  7. def forwards(self, orm):
  8. # Adding model 'WarnLevel'
  9. db.create_table(u'misago_warnlevel', (
  10. (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
  11. ('name', self.gf('django.db.models.fields.CharField')(max_length=255)),
  12. ('slug', self.gf('django.db.models.fields.SlugField')(max_length=255)),
  13. ('description', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
  14. ('warning_level', self.gf('django.db.models.fields.PositiveIntegerField')(default=1)),
  15. ('expires_after_minutes', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)),
  16. ('inhibit_posting_threads', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)),
  17. ('inhibit_posting_replies', self.gf('django.db.models.fields.PositiveIntegerField')(default=0)),
  18. ))
  19. db.send_create_signal('misago', ['WarnLevel'])
  20. def backwards(self, orm):
  21. # Deleting model 'WarnLevel'
  22. db.delete_table(u'misago_warnlevel')
  23. models = {
  24. 'misago.alert': {
  25. 'Meta': {'object_name': 'Alert'},
  26. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  27. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  28. 'message': ('django.db.models.fields.TextField', [], {}),
  29. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']"}),
  30. 'variables': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'})
  31. },
  32. 'misago.attachment': {
  33. 'Meta': {'object_name': 'Attachment'},
  34. 'agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  35. 'content_type': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  36. 'date': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  37. 'filetype': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.AttachmentType']"}),
  38. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  39. 'hash_id': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_index': 'True'}),
  40. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  41. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  42. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  43. 'path': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  44. 'post': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Post']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  45. 'session': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'}),
  46. 'size': ('django.db.models.fields.PositiveIntegerField', [], {'max_length': '255'}),
  47. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  48. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  49. 'user_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  50. 'user_name_slug': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  51. },
  52. 'misago.attachmenttype': {
  53. 'Meta': {'object_name': 'AttachmentType'},
  54. 'extensions': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  55. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  56. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'}),
  57. 'roles': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['misago.Role']", 'symmetrical': 'False'}),
  58. 'size_limit': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'})
  59. },
  60. 'misago.ban': {
  61. 'Meta': {'object_name': 'Ban'},
  62. 'ban': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  63. 'expires': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  64. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  65. 'reason_admin': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  66. 'reason_user': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  67. 'test': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'})
  68. },
  69. 'misago.change': {
  70. 'Meta': {'object_name': 'Change'},
  71. 'agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  72. 'change': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  73. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  74. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  75. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  76. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  77. 'post': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Post']"}),
  78. 'post_content': ('django.db.models.fields.TextField', [], {}),
  79. 'reason': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  80. 'size': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  81. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']"}),
  82. 'thread_name_new': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  83. 'thread_name_old': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  84. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  85. 'user_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  86. 'user_slug': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  87. },
  88. 'misago.checkpoint': {
  89. 'Meta': {'object_name': 'Checkpoint'},
  90. 'action': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  91. 'agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  92. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  93. 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  94. 'extra': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  95. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  96. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  97. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  98. 'old_forum': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'to': "orm['misago.Forum']"}),
  99. 'old_forum_name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  100. 'old_forum_slug': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  101. 'target_user': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.User']"}),
  102. 'target_user_name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  103. 'target_user_slug': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  104. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']"}),
  105. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  106. 'user_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  107. 'user_slug': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  108. },
  109. 'misago.fixture': {
  110. 'Meta': {'object_name': 'Fixture'},
  111. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  112. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  113. },
  114. 'misago.forum': {
  115. 'Meta': {'object_name': 'Forum'},
  116. 'attrs': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  117. 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  118. 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  119. 'description_preparsed': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  120. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  121. 'last_poster': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.User']"}),
  122. 'last_poster_name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  123. 'last_poster_slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  124. 'last_poster_style': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  125. 'last_thread': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.Thread']"}),
  126. 'last_thread_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  127. 'last_thread_name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  128. 'last_thread_slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  129. 'level': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
  130. 'lft': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
  131. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  132. 'parent': ('mptt.fields.TreeForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['misago.Forum']"}),
  133. 'posts': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  134. 'posts_delta': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  135. 'prune_last': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  136. 'prune_start': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  137. 'pruned_archive': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.Forum']"}),
  138. 'redirect': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  139. 'redirects': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  140. 'redirects_delta': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  141. 'rght': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
  142. 'show_details': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
  143. 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255'}),
  144. 'special': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  145. 'style': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  146. 'threads': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  147. 'threads_delta': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  148. 'tree_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
  149. 'type': ('django.db.models.fields.CharField', [], {'max_length': '12'})
  150. },
  151. 'misago.forumread': {
  152. 'Meta': {'object_name': 'ForumRead'},
  153. 'cleared': ('django.db.models.fields.DateTimeField', [], {}),
  154. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  155. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  156. 'updated': ('django.db.models.fields.DateTimeField', [], {}),
  157. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']"})
  158. },
  159. 'misago.forumrole': {
  160. 'Meta': {'object_name': 'ForumRole'},
  161. '_permissions': ('django.db.models.fields.TextField', [], {'null': 'True', 'db_column': "'permissions'", 'blank': 'True'}),
  162. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  163. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  164. },
  165. 'misago.karma': {
  166. 'Meta': {'object_name': 'Karma'},
  167. 'agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  168. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  169. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  170. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  171. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  172. 'post': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Post']"}),
  173. 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  174. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']"}),
  175. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  176. 'user_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  177. 'user_slug': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  178. },
  179. 'misago.monitoritem': {
  180. 'Meta': {'object_name': 'MonitorItem'},
  181. '_value': ('django.db.models.fields.TextField', [], {'null': 'True', 'db_column': "'value'", 'blank': 'True'}),
  182. 'id': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'}),
  183. 'type': ('django.db.models.fields.CharField', [], {'default': "'int'", 'max_length': '255'}),
  184. 'updated': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'})
  185. },
  186. 'misago.newsletter': {
  187. 'Meta': {'object_name': 'Newsletter'},
  188. 'content_html': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  189. 'content_plain': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  190. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  191. 'ignore_subscriptions': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  192. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  193. 'progress': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  194. 'ranks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['misago.Rank']", 'symmetrical': 'False'}),
  195. 'step_size': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  196. 'token': ('django.db.models.fields.CharField', [], {'max_length': '32'})
  197. },
  198. 'misago.poll': {
  199. 'Meta': {'object_name': 'Poll'},
  200. '_choices_cache': ('django.db.models.fields.TextField', [], {'db_column': "'choices_cache'"}),
  201. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  202. 'length': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  203. 'max_choices': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  204. 'public': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  205. 'question': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  206. 'start_date': ('django.db.models.fields.DateTimeField', [], {}),
  207. 'thread': ('django.db.models.fields.related.OneToOneField', [], {'related_name': "'poll_of'", 'unique': 'True', 'primary_key': 'True', 'to': "orm['misago.Thread']"}),
  208. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  209. 'user_name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  210. 'user_slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  211. 'vote_changing': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  212. 'votes': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'})
  213. },
  214. 'misago.polloption': {
  215. 'Meta': {'object_name': 'PollOption'},
  216. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  217. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  218. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  219. 'poll': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'option_set'", 'to': "orm['misago.Poll']"}),
  220. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']"}),
  221. 'votes': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'})
  222. },
  223. 'misago.pollvote': {
  224. 'Meta': {'object_name': 'PollVote'},
  225. 'agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  226. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  227. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  228. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  229. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  230. 'option': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.PollOption']", 'null': 'True', 'blank': 'True'}),
  231. 'poll': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'vote_set'", 'to': "orm['misago.Poll']"}),
  232. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']"}),
  233. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  234. 'user_name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  235. 'user_slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
  236. },
  237. 'misago.post': {
  238. 'Meta': {'object_name': 'Post'},
  239. '_attachments': ('django.db.models.fields.TextField', [], {'null': 'True', 'db_column': "'attachments'", 'blank': 'True'}),
  240. 'agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  241. 'current_date': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True'}),
  242. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  243. 'delete_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  244. 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  245. 'downvotes': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  246. 'edit_reason': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  247. 'edit_user': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.User']"}),
  248. 'edit_user_name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  249. 'edit_user_slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  250. 'edits': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  251. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  252. 'has_attachments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  253. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  254. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  255. 'mentions': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'mention_set'", 'symmetrical': 'False', 'to': "orm['misago.User']"}),
  256. 'moderated': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  257. 'post': ('django.db.models.fields.TextField', [], {}),
  258. 'post_preparsed': ('django.db.models.fields.TextField', [], {}),
  259. 'protected': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  260. 'reported': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_index': 'True'}),
  261. 'reports': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  262. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']"}),
  263. 'upvotes': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  264. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  265. 'user_name': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  266. },
  267. 'misago.pruningpolicy': {
  268. 'Meta': {'object_name': 'PruningPolicy'},
  269. 'email': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  270. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  271. 'last_visit': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  272. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  273. 'posts': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  274. 'registered': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'})
  275. },
  276. 'misago.rank': {
  277. 'Meta': {'object_name': 'Rank'},
  278. 'as_tab': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  279. 'criteria': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  280. 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  281. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  282. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  283. 'on_index': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  284. 'order': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  285. 'roles': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['misago.Role']", 'symmetrical': 'False'}),
  286. 'slug': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  287. 'special': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  288. 'style': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  289. 'title': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'})
  290. },
  291. 'misago.role': {
  292. 'Meta': {'object_name': 'Role'},
  293. '_permissions': ('django.db.models.fields.TextField', [], {'null': 'True', 'db_column': "'permissions'", 'blank': 'True'}),
  294. '_special': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'db_column': "'special'", 'blank': 'True'}),
  295. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  296. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  297. 'protected': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
  298. },
  299. 'misago.session': {
  300. 'Meta': {'object_name': 'Session'},
  301. 'admin': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  302. 'agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  303. 'crawler': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  304. 'data': ('django.db.models.fields.TextField', [], {'db_column': "'session_data'"}),
  305. 'id': ('django.db.models.fields.CharField', [], {'max_length': '42', 'primary_key': 'True'}),
  306. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  307. 'last': ('django.db.models.fields.DateTimeField', [], {}),
  308. 'matched': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  309. 'rank': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sessions'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.Rank']"}),
  310. 'start': ('django.db.models.fields.DateTimeField', [], {}),
  311. 'team': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  312. 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'sessions'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.User']"})
  313. },
  314. 'misago.setting': {
  315. 'Meta': {'object_name': 'Setting'},
  316. '_value': ('django.db.models.fields.TextField', [], {'null': 'True', 'db_column': "'value'", 'blank': 'True'}),
  317. 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  318. 'extra': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  319. 'field': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  320. 'group': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.SettingsGroup']", 'to_field': "'key'"}),
  321. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  322. 'normalize_to': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  323. 'position': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  324. 'separator': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  325. 'setting': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'}),
  326. 'value_default': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'})
  327. },
  328. 'misago.settingsgroup': {
  329. 'Meta': {'object_name': 'SettingsGroup'},
  330. 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  331. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  332. 'key': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'}),
  333. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  334. },
  335. 'misago.signinattempt': {
  336. 'Meta': {'object_name': 'SignInAttempt'},
  337. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  338. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  339. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'})
  340. },
  341. 'misago.thread': {
  342. 'Meta': {'object_name': 'Thread'},
  343. 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  344. 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  345. 'downvotes': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  346. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  347. 'has_poll': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  348. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  349. 'last': ('django.db.models.fields.DateTimeField', [], {}),
  350. 'last_post': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.Post']"}),
  351. 'last_poster': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.User']"}),
  352. 'last_poster_name': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  353. 'last_poster_slug': ('django.db.models.fields.SlugField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  354. 'last_poster_style': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  355. 'moderated': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  356. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  357. 'participants': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'private_thread_set'", 'symmetrical': 'False', 'to': "orm['misago.User']"}),
  358. 'prefix': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.ThreadPrefix']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  359. 'replies': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  360. 'replies_deleted': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  361. 'replies_moderated': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  362. 'replies_reported': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  363. 'report_for': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'report_set'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.Post']"}),
  364. 'score': ('django.db.models.fields.PositiveIntegerField', [], {'default': '30'}),
  365. 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255'}),
  366. 'start': ('django.db.models.fields.DateTimeField', [], {}),
  367. 'start_post': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.Post']"}),
  368. 'start_poster': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  369. 'start_poster_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  370. 'start_poster_slug': ('django.db.models.fields.SlugField', [], {'max_length': '255'}),
  371. 'start_poster_style': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  372. 'upvotes': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  373. 'weight': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'})
  374. },
  375. 'misago.threadprefix': {
  376. 'Meta': {'object_name': 'ThreadPrefix'},
  377. 'forums': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['misago.Forum']", 'symmetrical': 'False'}),
  378. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  379. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  380. 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255'}),
  381. 'style': ('django.db.models.fields.CharField', [], {'max_length': '255'})
  382. },
  383. 'misago.threadread': {
  384. 'Meta': {'object_name': 'ThreadRead'},
  385. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  386. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  387. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']"}),
  388. 'updated': ('django.db.models.fields.DateTimeField', [], {}),
  389. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']"})
  390. },
  391. 'misago.token': {
  392. 'Meta': {'object_name': 'Token'},
  393. 'accessed': ('django.db.models.fields.DateTimeField', [], {}),
  394. 'created': ('django.db.models.fields.DateTimeField', [], {}),
  395. 'id': ('django.db.models.fields.CharField', [], {'max_length': '42', 'primary_key': 'True'}),
  396. 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'signin_tokens'", 'to': "orm['misago.User']"})
  397. },
  398. 'misago.user': {
  399. 'Meta': {'object_name': 'User'},
  400. '_avatar_crop': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'db_column': "'avatar_crop'", 'blank': 'True'}),
  401. 'acl_key': ('django.db.models.fields.CharField', [], {'max_length': '12', 'null': 'True', 'blank': 'True'}),
  402. 'activation': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  403. 'alerts': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  404. 'alerts_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  405. 'allow_pds': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  406. 'avatar_ban': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  407. 'avatar_ban_reason_admin': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  408. 'avatar_ban_reason_user': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  409. 'avatar_image': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  410. 'avatar_original': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  411. 'avatar_temp': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  412. 'avatar_type': ('django.db.models.fields.CharField', [], {'max_length': '10', 'null': 'True', 'blank': 'True'}),
  413. 'email': ('django.db.models.fields.EmailField', [], {'max_length': '255'}),
  414. 'email_hash': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '32'}),
  415. 'followers': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  416. 'following': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  417. 'follows': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'follows_set'", 'symmetrical': 'False', 'to': "orm['misago.User']"}),
  418. 'hide_activity': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  419. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  420. 'ignores': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'ignores_set'", 'symmetrical': 'False', 'to': "orm['misago.User']"}),
  421. 'is_team': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  422. 'join_agent': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  423. 'join_date': ('django.db.models.fields.DateTimeField', [], {}),
  424. 'join_ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  425. 'karma_given_n': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  426. 'karma_given_p': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  427. 'karma_n': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  428. 'karma_p': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  429. 'last_agent': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  430. 'last_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  431. 'last_ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39', 'null': 'True', 'blank': 'True'}),
  432. 'last_post': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  433. 'last_search': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  434. 'last_sync': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  435. 'last_vote': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
  436. 'password': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  437. 'password_date': ('django.db.models.fields.DateTimeField', [], {}),
  438. 'posts': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  439. 'rank': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Rank']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
  440. 'ranking': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  441. 'receive_newsletters': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
  442. 'roles': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['misago.Role']", 'symmetrical': 'False'}),
  443. 'score': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
  444. 'signature': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  445. 'signature_ban': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  446. 'signature_ban_reason_admin': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  447. 'signature_ban_reason_user': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  448. 'signature_preparsed': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  449. 'subscribe_reply': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  450. 'subscribe_start': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  451. 'sync_pds': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  452. 'threads': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  453. 'timezone': ('django.db.models.fields.CharField', [], {'default': "'utc'", 'max_length': '255'}),
  454. 'title': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
  455. 'token': ('django.db.models.fields.CharField', [], {'max_length': '12', 'null': 'True', 'blank': 'True'}),
  456. 'unread_pds': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  457. 'username': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  458. 'username_slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '255'}),
  459. 'votes': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  460. 'warning_level': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  461. 'warning_level_update_on': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'})
  462. },
  463. 'misago.usernamechange': {
  464. 'Meta': {'object_name': 'UsernameChange'},
  465. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  466. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  467. 'old_username': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  468. 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'namechanges'", 'to': "orm['misago.User']"})
  469. },
  470. 'misago.warn': {
  471. 'Meta': {'object_name': 'Warn'},
  472. 'agent': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  473. 'canceled': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  474. 'date': ('django.db.models.fields.DateTimeField', [], {}),
  475. 'giver': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'warnings_given_set'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['misago.User']"}),
  476. 'giver_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  477. 'giver_slug': ('django.db.models.fields.SlugField', [], {'max_length': '255'}),
  478. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  479. 'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
  480. 'reason_team': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  481. 'reason_user': ('django.db.models.fields.TextField', [], {}),
  482. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']"})
  483. },
  484. 'misago.warnlevel': {
  485. 'Meta': {'object_name': 'WarnLevel'},
  486. 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
  487. 'expires_after_minutes': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  488. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  489. 'inhibit_posting_replies': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  490. 'inhibit_posting_threads': ('django.db.models.fields.PositiveIntegerField', [], {'default': '0'}),
  491. 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
  492. 'slug': ('django.db.models.fields.SlugField', [], {'max_length': '255'}),
  493. 'warning_level': ('django.db.models.fields.PositiveIntegerField', [], {'default': '1'})
  494. },
  495. 'misago.watchedthread': {
  496. 'Meta': {'object_name': 'WatchedThread'},
  497. 'email': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  498. 'forum': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Forum']"}),
  499. u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  500. 'last_read': ('django.db.models.fields.DateTimeField', [], {}),
  501. 'starter': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'+'", 'null': 'True', 'to': "orm['misago.User']"}),
  502. 'thread': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.Thread']"}),
  503. 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['misago.User']"})
  504. }
  505. }
  506. complete_apps = ['misago']