web/hdabo/migrations/0005_wp_db_indexes.py
changeset 116 0f9cc90c49fa
parent 115 46c0f7a935d1
parent 114 c59383cc9940
child 117 dc6c3ac62efa
equal deleted inserted replaced
115:46c0f7a935d1 116:0f9cc90c49fa
     1 # encoding: utf-8
       
     2 import datetime
       
     3 from south.db import db
       
     4 from south.v2 import SchemaMigration
       
     5 from django.db import models
       
     6 
       
     7 class Migration(SchemaMigration):
       
     8 
       
     9     def forwards(self, orm):
       
    10         
       
    11         # Adding unique constraint on 'TagWpCategory', fields ['wp_category', 'hidden', 'tag']
       
    12         db.create_unique('hdabo_tagwpcategory', ['wp_category_id', 'hidden', 'tag_id'])
       
    13 
       
    14         # Adding unique constraint on 'InfoboxParameter', fields ['param_name', 'tag_infobox']
       
    15         db.create_unique('hdabo_infoboxparameter', ['param_name', 'tag_infobox_id'])
       
    16 
       
    17         # Adding unique constraint on 'TagInfobox', fields ['revision_id', 'tag', 'name']
       
    18         db.create_unique('hdabo_taginfobox', ['revision_id', 'tag_id', 'name'])
       
    19 
       
    20 
       
    21     def backwards(self, orm):
       
    22         
       
    23         # Removing unique constraint on 'TagInfobox', fields ['revision_id', 'tag', 'name']
       
    24         db.delete_unique('hdabo_taginfobox', ['revision_id', 'tag_id', 'name'])
       
    25 
       
    26         # Removing unique constraint on 'InfoboxParameter', fields ['param_name', 'tag_infobox']
       
    27         db.delete_unique('hdabo_infoboxparameter', ['param_name', 'tag_infobox_id'])
       
    28 
       
    29         # Removing unique constraint on 'TagWpCategory', fields ['wp_category', 'hidden', 'tag']
       
    30         db.delete_unique('hdabo_tagwpcategory', ['wp_category_id', 'hidden', 'tag_id'])
       
    31 
       
    32 
       
    33     models = {
       
    34         'auth.group': {
       
    35             'Meta': {'object_name': 'Group'},
       
    36             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
    37             'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
       
    38             'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
       
    39         },
       
    40         'auth.permission': {
       
    41             'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
       
    42             'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
       
    43             'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
       
    44             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
    45             'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
       
    46         },
       
    47         'auth.user': {
       
    48             'Meta': {'object_name': 'User'},
       
    49             'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
       
    50             'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
       
    51             'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
       
    52             'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
       
    53             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
    54             'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
       
    55             'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
       
    56             'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
       
    57             'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
       
    58             'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
       
    59             'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
       
    60             'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
       
    61             'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
       
    62         },
       
    63         'contenttypes.contenttype': {
       
    64             'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
       
    65             'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
       
    66             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
    67             'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
       
    68             'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
       
    69         },
       
    70         'hdabo.author': {
       
    71             'Meta': {'object_name': 'Author'},
       
    72             'firstname': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}),
       
    73             'hda_id': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512'}),
       
    74             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
    75             'lastname': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'})
       
    76         },
       
    77         'hdabo.datasheet': {
       
    78             'Meta': {'object_name': 'Datasheet'},
       
    79             'author': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Author']", 'null': 'True', 'blank': 'True'}),
       
    80             'college_periods': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'college_periods_datasheets'", 'symmetrical': 'False', 'through': "orm['hdabo.Datasheet_college_periods']", 'to': "orm['hdabo.TimePeriod']"}),
       
    81             'college_themes': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'college_themes_datasheets'", 'symmetrical': 'False', 'through': "orm['hdabo.Datasheet_college_themes']", 'to': "orm['hdabo.Domain']"}),
       
    82             'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
       
    83             'domains': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'datasheets'", 'symmetrical': 'False', 'through': "orm['hdabo.Datasheet_domains']", 'to': "orm['hdabo.Domain']"}),
       
    84             'format': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.DocumentFormat']", 'null': 'True', 'blank': 'True'}),
       
    85             'hda_id': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512'}),
       
    86             'highschool_periods': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'highschool_periods_datasheets'", 'symmetrical': 'False', 'through': "orm['hdabo.Datasheet_highschool_periods']", 'to': "orm['hdabo.TimePeriod']"}),
       
    87             'highschool_themes': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'highschool_themes_datasheets'", 'symmetrical': 'False', 'through': "orm['hdabo.Datasheet_highschool_themes']", 'to': "orm['hdabo.Domain']"}),
       
    88             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
    89             'manual_order': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_index': 'True'}),
       
    90             'modification_datetime': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
       
    91             'organisation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Organisation']"}),
       
    92             'original_creation_date': ('django.db.models.fields.DateField', [], {}),
       
    93             'original_modification_date': ('django.db.models.fields.DateField', [], {}),
       
    94             'primary_periods': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'primary_periods_datasheets'", 'symmetrical': 'False', 'through': "orm['hdabo.Datasheet_primary_periods']", 'to': "orm['hdabo.TimePeriod']"}),
       
    95             'primary_themes': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'primary_themes_datasheets'", 'symmetrical': 'False', 'through': "orm['hdabo.Datasheet_primary_themes']", 'to': "orm['hdabo.Domain']"}),
       
    96             'tags': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['hdabo.Tag']", 'through': "orm['hdabo.TaggedSheet']", 'symmetrical': 'False'}),
       
    97             'title': ('django.db.models.fields.CharField', [], {'max_length': '2048'}),
       
    98             'town': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Location']", 'null': 'True', 'blank': 'True'}),
       
    99             'url': ('django.db.models.fields.URLField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}),
       
   100             'validated': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_index': 'True'}),
       
   101             'validation_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
       
   102             'validator': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'})
       
   103         },
       
   104         'hdabo.datasheet_college_periods': {
       
   105             'Meta': {'ordering': "['sort_value']", 'object_name': 'Datasheet_college_periods'},
       
   106             'datasheet': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Datasheet']"}),
       
   107             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   108             'sort_value': ('django.db.models.fields.IntegerField', [], {}),
       
   109             'timeperiod': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.TimePeriod']"})
       
   110         },
       
   111         'hdabo.datasheet_college_themes': {
       
   112             'Meta': {'ordering': "['sort_value']", 'object_name': 'Datasheet_college_themes'},
       
   113             'datasheet': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Datasheet']"}),
       
   114             'domain': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Domain']"}),
       
   115             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   116             'sort_value': ('django.db.models.fields.IntegerField', [], {})
       
   117         },
       
   118         'hdabo.datasheet_domains': {
       
   119             'Meta': {'ordering': "['sort_value']", 'object_name': 'Datasheet_domains'},
       
   120             'datasheet': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Datasheet']"}),
       
   121             'domain': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Domain']"}),
       
   122             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   123             'sort_value': ('django.db.models.fields.IntegerField', [], {})
       
   124         },
       
   125         'hdabo.datasheet_highschool_periods': {
       
   126             'Meta': {'ordering': "['sort_value']", 'object_name': 'Datasheet_highschool_periods'},
       
   127             'datasheet': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Datasheet']"}),
       
   128             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   129             'sort_value': ('django.db.models.fields.IntegerField', [], {}),
       
   130             'timeperiod': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.TimePeriod']"})
       
   131         },
       
   132         'hdabo.datasheet_highschool_themes': {
       
   133             'Meta': {'ordering': "['sort_value']", 'object_name': 'Datasheet_highschool_themes'},
       
   134             'datasheet': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Datasheet']"}),
       
   135             'domain': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Domain']"}),
       
   136             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   137             'sort_value': ('django.db.models.fields.IntegerField', [], {})
       
   138         },
       
   139         'hdabo.datasheet_primary_periods': {
       
   140             'Meta': {'ordering': "['sort_value']", 'object_name': 'Datasheet_primary_periods'},
       
   141             'datasheet': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Datasheet']"}),
       
   142             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   143             'sort_value': ('django.db.models.fields.IntegerField', [], {}),
       
   144             'timeperiod': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.TimePeriod']"})
       
   145         },
       
   146         'hdabo.datasheet_primary_themes': {
       
   147             'Meta': {'ordering': "['sort_value']", 'object_name': 'Datasheet_primary_themes'},
       
   148             'datasheet': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Datasheet']"}),
       
   149             'domain': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Domain']"}),
       
   150             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   151             'sort_value': ('django.db.models.fields.IntegerField', [], {})
       
   152         },
       
   153         'hdabo.documentformat': {
       
   154             'Meta': {'object_name': 'DocumentFormat'},
       
   155             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   156             'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512'})
       
   157         },
       
   158         'hdabo.domain': {
       
   159             'Meta': {'unique_together': "(('label', 'school_period'),)", 'object_name': 'Domain'},
       
   160             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   161             'label': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
       
   162             'school_period': ('django.db.models.fields.IntegerField', [], {})
       
   163         },
       
   164         'hdabo.infoboxparameter': {
       
   165             'Meta': {'unique_together': "(('tag_infobox', 'param_name'),)", 'object_name': 'InfoboxParameter'},
       
   166             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   167             'param_name': ('django.db.models.fields.CharField', [], {'max_length': '2048'}),
       
   168             'param_value': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
       
   169             'tag_infobox': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.TagInfobox']"})
       
   170         },
       
   171         'hdabo.location': {
       
   172             'Meta': {'object_name': 'Location'},
       
   173             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   174             'insee': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '5'}),
       
   175             'name': ('django.db.models.fields.CharField', [], {'max_length': '512'})
       
   176         },
       
   177         'hdabo.organisation': {
       
   178             'Meta': {'object_name': 'Organisation'},
       
   179             'hda_id': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512'}),
       
   180             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   181             'location': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}),
       
   182             'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
       
   183             'website': ('django.db.models.fields.CharField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'})
       
   184         },
       
   185         'hdabo.tag': {
       
   186             'Meta': {'unique_together': "(('label', 'original_label', 'url_status'),)", 'object_name': 'Tag'},
       
   187             'alias': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
       
   188             'alternative_label': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}),
       
   189             'alternative_wikipedia_pageid': ('django.db.models.fields.BigIntegerField', [], {'null': 'True', 'blank': 'True'}),
       
   190             'alternative_wikipedia_url': ('django.db.models.fields.URLField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}),
       
   191             'category': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.TagCategory']", 'null': 'True', 'blank': 'True'}),
       
   192             'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
       
   193             'dbpedia_uri': ('django.db.models.fields.URLField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}),
       
   194             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   195             'label': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'db_index': 'True'}),
       
   196             'normalized_label': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'db_index': 'True'}),
       
   197             'original_label': ('django.db.models.fields.CharField', [], {'max_length': '1024'}),
       
   198             'popularity': ('django.db.models.fields.IntegerField', [], {'default': '0', 'db_index': 'True'}),
       
   199             'url_status': ('django.db.models.fields.IntegerField', [], {'default': 'None', 'null': 'True', 'blank': 'True'}),
       
   200             'wikipedia_pageid': ('django.db.models.fields.BigIntegerField', [], {'null': 'True', 'blank': 'True'}),
       
   201             'wikipedia_url': ('django.db.models.fields.URLField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}),
       
   202             'wp_categories': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['hdabo.WpCategory']", 'through': "orm['hdabo.TagWpCategory']", 'symmetrical': 'False'})
       
   203         },
       
   204         'hdabo.tagcategory': {
       
   205             'Meta': {'object_name': 'TagCategory'},
       
   206             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   207             'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '512'})
       
   208         },
       
   209         'hdabo.taggedsheet': {
       
   210             'Meta': {'object_name': 'TaggedSheet'},
       
   211             'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
       
   212             'datasheet': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Datasheet']"}),
       
   213             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   214             'index_note': ('django.db.models.fields.FloatField', [], {'default': '0.0', 'db_index': 'True'}),
       
   215             'order': ('django.db.models.fields.IntegerField', [], {'default': '0', 'db_index': 'True'}),
       
   216             'original_order': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
       
   217             'tag': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Tag']"}),
       
   218             'wikipedia_revision_id': ('django.db.models.fields.BigIntegerField', [], {'null': 'True', 'blank': 'True'})
       
   219         },
       
   220         'hdabo.taginfobox': {
       
   221             'Meta': {'unique_together': "(('tag', 'name', 'revision_id'),)", 'object_name': 'TagInfobox'},
       
   222             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   223             'name': ('django.db.models.fields.CharField', [], {'max_length': '2048'}),
       
   224             'revision_id': ('django.db.models.fields.BigIntegerField', [], {'null': 'True', 'blank': 'True'}),
       
   225             'source': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
       
   226             'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'infoboxes'", 'to': "orm['hdabo.Tag']"})
       
   227         },
       
   228         'hdabo.tagwpcategory': {
       
   229             'Meta': {'unique_together': "(('tag', 'wp_category', 'hidden'),)", 'object_name': 'TagWpCategory'},
       
   230             'hidden': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
       
   231             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   232             'tag': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.Tag']"}),
       
   233             'wp_category': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['hdabo.WpCategory']"})
       
   234         },
       
   235         'hdabo.timeperiod': {
       
   236             'Meta': {'unique_together': "(('label', 'school_period'),)", 'object_name': 'TimePeriod'},
       
   237             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   238             'label': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
       
   239             'school_period': ('django.db.models.fields.IntegerField', [], {})
       
   240         },
       
   241         'hdabo.wpcategory': {
       
   242             'Meta': {'object_name': 'WpCategory'},
       
   243             'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
       
   244             'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '2048'})
       
   245         }
       
   246     }
       
   247 
       
   248     complete_apps = ['hdabo']