Commit 36a114f5290f54b40c4bb1f933d3caeece2eeeeb

Authored by janek37
1 parent e465fa48

rewolucja w modelu dla przyspieszenia importu

dictionary/ajax_lexeme_view.py
... ... @@ -7,9 +7,9 @@ from django.db.models import Max
7 7 from dictionary.ajax_jqgrid import JqGridQuery
8 8 from dictionary.ajax_lexeme_jqgrid import cache_key, get_pk_list
9 9 from dictionary.models import Lexeme, LexemeInflectionPattern, PartOfSpeech, \
10   - Pattern, InflectionCharacteristic, Vocabulary, LexemeAssociation, Qualifier, \
  10 + Pattern, InflectionCharacteristic, Vocabulary, Qualifier, \
11 11 prepare_table, ClassificationValue, CrossReference, TableTemplate, get_root, \
12   - InputLexeme, set_vocabulary, CrossReferenceType, filter_visible, \
  12 + InputLexeme, CrossReferenceType, filter_visible, \
13 13 editable_vocabularies, visible_qualifiers, LexemeAttribute, LexemeAttributeValue
14 14 from dictionary.forms import LexemeEditForm, LIPEditForm, ClassificationForm, \
15 15 CrossReferenceForm, ActionFieldForm, ACTION_FIELDS, LexemeOpenAttributeForm, \
... ... @@ -215,7 +215,7 @@ def update_lexeme(request, form_data, mask=''):
215 215  
216 216 for vocab in editable_vocabularies(request.user):
217 217 if vocab != owner:
218   - set_vocabulary(l, vocab, vocab in form.cleaned_data['vocabularies'])
  218 + vocab.set_lexeme(l, vocab in form.cleaned_data['vocabularies'])
219 219 new_owner = form.cleaned_data.get('new_owner')
220 220 if new_owner and new_owner != owner:
221 221 l.change_owner(new_owner)
... ... @@ -233,15 +233,15 @@ def update_lexeme(request, form_data, mask=''):
233 233 l_cvs = l.classification_values(c)
234 234 for cv in l_cvs:
235 235 if cv.pk not in classification_form.cleaned_data['values']:
236   - cv.lexemes.remove(l) #add
  236 + cv.remove_lexeme(l)
237 237 for cv in cvs:
238 238 if cv not in l_cvs:
239   - cv.lexemes.add(l) #add
  239 + cv.add_lexeme(l)
240 240 else:
241 241 raise AjaxError(error_messages(classification_form))
242 242 for cv in l.classificationvalue_set.all():
243 243 if cv.classification not in classifications:
244   - cv.lexemes.remove(l) #add
  244 + cv.remove_lexeme(l)
245 245  
246 246 for prefix in form_dict['deleted']:
247 247 pk = int(prefix[3:])
... ... @@ -309,17 +309,17 @@ def update_lexeme(request, form_data, mask=''):
309 309 av = attr_form.cleaned_data['value']
310 310 if not attr_values or attr_values.get() != av:
311 311 for av1 in attr_values:
312   - av1.lexemes.remove(l) #add
313   - av.lexemes.add(l)
  312 + av1.remove_lexeme(l)
  313 + av.add_lexeme(l)
314 314 else:
315 315 attr_form = LexemeMultipleAttributeForm(
316 316 attribute=attr, data=form_dict, prefix=prefix)
317 317 if attr_form.is_valid():
318 318 new_values = attr_form.cleaned_data['value']
319 319 for av in set(attr_values) - set(new_values):
320   - av.lexemes.remove(l) #add
  320 + av.remove_lexeme(l)
321 321 for av in set(new_values) - set(attr_values):
322   - av.lexemes.add(l) #add
  322 + av.add_lexeme(l)
323 323 if len(submitted_lips) == 0 and l.status != 'cand':
324 324 raise AjaxError(u'Wybierz odmianę lub ustaw status "kandydat".')
325 325 l.refresh_forms()
... ... @@ -344,7 +344,7 @@ def update_lexeme_qualifiers(lexeme, user, form_dict, form_data):
344 344 qualifier.set_for(
345 345 lexeme, unicode(qualifier.pk) in form_dict['qualifiers'])
346 346 for vocab in editable_vocabs:
347   - set_vocabulary(lexeme, vocab, vocab.pk in form_dict['vocabularies'])
  347 + vocab.set_lexeme(lexeme, vocab.pk in form_dict['vocabularies'])
348 348 submitted_lips = []
349 349 for pair in form_data:
350 350 name = pair['name']
... ... @@ -420,7 +420,7 @@ def create_lexeme(request, vocab_id):
420 420 l.responsible = request.user
421 421 l.deleted = True # proste i genialne!
422 422 l.save()
423   - LexemeAssociation.objects.create(lexeme=l, vocabulary=owner)
  423 + owner.add_lexeme(l)
424 424 return {'id': l.id}
425 425  
426 426 @ajax(method='get', login_required=True)
... ... @@ -475,10 +475,10 @@ def execute_group_actions(request, actions, filters):
475 475 elif field == 'using_vocabulary':
476 476 vocab = Vocabulary.objects.get(pk=action['value'])
477 477 if action['type'] == 'add':
478   - set_vocabulary(l, vocab, True)
  478 + vocab.add_lexeme(l)
479 479 else: # 'remove'
480 480 if vocab != l.owner_vocabulary:
481   - set_vocabulary(l, vocab, False)
  481 + vocab.remove_lexeme(l)
482 482 else: # field == 'lexeme_qualifier'
483 483 qual = Qualifier.objects.get(pk=action['value'])
484 484 # a co jeśli koliduje z innym?
... ...
dictionary/management/commands/edit_words.py
... ... @@ -4,7 +4,7 @@ import sys
4 4 from django.core.management.base import BaseCommand, CommandError
5 5 from common.util import debug
6 6 from accounts.util import bot_history
7   -from dictionary.models import Lexeme, Vocabulary, set_vocabulary
  7 +from dictionary.models import Lexeme, Vocabulary
8 8  
9 9 class Command(BaseCommand):
10 10 args = '<input file name>'
... ... @@ -20,5 +20,5 @@ def edit_words(input_file):
20 20 word = line.decode('utf-8').strip()
21 21 lexemes = Lexeme.objects.filter(entry=word)
22 22 for lexeme in lexemes:
23   - set_vocabulary(lexeme, anty, True)
  23 + anty.add_lexeme(lexeme)
24 24 # lexeme.save()
... ...
dictionary/management/commands/fix_morfologik.py
... ... @@ -3,7 +3,7 @@
3 3 import sys
4 4 from django.core.management.base import BaseCommand, CommandError
5 5 from common.util import no_history, debug
6   -from dictionary.models import Lexeme, Pattern, Vocabulary, LexemeAssociation, \
  6 +from dictionary.models import Lexeme, Pattern, Vocabulary, \
7 7 Qualifier, InflectionCharacteristic
8 8  
9 9 class Command(BaseCommand):
... ...
dictionary/management/commands/fix_osc.py
... ... @@ -3,8 +3,7 @@
3 3 import sys
4 4 from django.core.management.base import BaseCommand, CommandError
5 5 from common.util import no_history, debug
6   -from dictionary.models import Lexeme, Vocabulary, LexemeAssociation, \
7   - PartOfSpeech, CrossReference
  6 +from dictionary.models import Lexeme, Vocabulary, PartOfSpeech, CrossReference
8 7  
9 8 class Command(BaseCommand):
10 9 args = 'none'
... ...
dictionary/management/commands/fix_surnames.py
... ... @@ -3,7 +3,7 @@
3 3 import sys
4 4 from django.core.management.base import BaseCommand, CommandError
5 5 from common.util import no_history, debug
6   -from dictionary.models import Lexeme, Vocabulary, LexemeAssociation
  6 +from dictionary.models import Lexeme, Vocabulary
7 7  
8 8 class Command(BaseCommand):
9 9 args = 'none'
... ... @@ -47,13 +47,11 @@ def fix_surnames():
47 47 m = m[0]
48 48 f = f[0]
49 49 if morfologik not in m.vocabularies.all():
50   - la = LexemeAssociation(lexeme=m, vocabulary=morfologik)
51   - la.save()
  50 + morfologik.add_lexeme(m)
52 51 else:
53 52 debug(lexeme.entry, u'Już jest dopisany do Morfologika [m]')
54 53 if morfologik not in f.vocabularies.all():
55   - la = LexemeAssociation(lexeme=f, vocabulary=morfologik)
56   - la.save()
  54 + morfologik.add_lexeme(f)
57 55 else:
58 56 debug(lexeme.entry, u'Już jest dopisany do Morfologika [f]')
59 57 lexeme.delete()
... ...
dictionary/management/commands/import_data.py
... ... @@ -281,7 +281,7 @@ class ImportData(object):
281 281 ))
282 282 lexeme_associations.append(LexemeAssociation(
283 283 lexeme_id=row['nr'], vocabulary_id=slownik))
284   - lexeme_cvs.append((row['nr'], cv))
  284 + lexeme_cvs.append(LexemeCV(lexeme_id=row['nr'], classification_value=cv))
285 285 if row['lkwal']:
286 286 for qual in row['lkwal'].split('|'):
287 287 lexeme_qualifiers.append((row['nr'], self.qual[qual]))
... ... @@ -289,7 +289,8 @@ class ImportData(object):
289 289 if row['pos'] in poses:
290 290 attr_value = attr_values[attr_name].get(f(row[column]))
291 291 if attr_value:
292   - lexeme_attrs.append((row['nr'], attr_value))
  292 + lexeme_attrs.append(
  293 + LexemeAV(lexeme_id=row['nr'], attribute_value=attr_value))
293 294 elif row[column]:
294 295 print 'unknown value of %s: %s' % (attr_name, row[column])
295 296 return (lexemes, lexeme_associations, lexeme_cvs, lexeme_qualifiers,
... ... @@ -416,11 +417,12 @@ class ImportData(object):
416 417 if MINI_MODE:
417 418 result = self.sqlite_cursor.execute(
418 419 'SELECT o.*, l.pos FROM odmieniasie o '
419   - 'JOIN leksemy l on o.nr = l.nr '
  420 + 'JOIN leksemy l ON o.nr = l.nr '
420 421 'WHERE l.nr IN (%s)' % (MINI_LEXEME_QUERY % 'nr'),
421 422 (MINI_LEXEME_COUNT,))
422 423 else:
423   - result = self.sqlite_cursor.execute('SELECT * FROM odmieniasie')
  424 + result = self.sqlite_cursor.execute(
  425 + 'SELECT * FROM odmieniasie JOIN leksemy l ON o.nr = l.nr')
424 426 lips = []
425 427 lip_quals = []
426 428 for row in result:
... ... @@ -435,7 +437,7 @@ class ImportData(object):
435 437 ))
436 438 if row['okwal']:
437 439 for qual in row['okwal'].split('|'):
438   - lip_quals.append((lexeme_id, row['oskl'], self.qual[qual])) #add
  440 + lip_quals.append((lexeme_id, row['oskl'], self.qual[qual]))
439 441 return lips, lip_quals
440 442  
441 443 def new_variants(self):
... ... @@ -582,14 +584,12 @@ class ImportData(object):
582 584 print 'associations...'
583 585 bulk_create(LexemeAssociation, lexeme_assoc)
584 586 print 'classifications...'
585   - for lexeme_id, cv in lexeme_cvs:
586   - cv.lexemes.add(lexeme_id) #add
  587 + bulk_create(LexemeCV, lexeme_cvs)
587 588 print 'qualifiers...'
588 589 for lexeme_id, q in lexeme_quals:
589 590 q.lexeme_set.add(lexeme_id) #add
590 591 print 'attributes...'
591   - for lexeme_id, attr_val in lexeme_attrs:
592   - attr_val.lexemes.add(lexeme_id)
  592 + bulk_create(LexemeAV, lexeme_attrs)
593 593 return lexeme_attrs
594 594 lexeme_attrs = import_lexemes()
595 595 def import_lips():
... ... @@ -611,13 +611,13 @@ class ImportData(object):
611 611 bulk_create(CrossReference, self.new_cross_references())
612 612 print 'copying aspect values to derived lexemes...'
613 613 aspect_vals = LexemeAttributeValue.objects.filter(attribute__name='aspekt')
614   - for lexeme_id, attr_val in lexeme_attrs:
615   - if attr_val in aspect_vals:
  614 + for lexeme_av in lexeme_attrs:
  615 + if lexeme_av.attribute_value in aspect_vals:
616 616 crs = CrossReference.objects.filter(
617   - from_lexeme__id=lexeme_id,
  617 + from_lexeme__id=lexeme_av.lexeme_id,
618 618 type__symbol__in=('verger', 'verppas', 'verpact'))
619 619 for cr in crs:
620   - attr_val.lexemes.add(cr.to_lexeme) #add
  620 + lexeme_av.attribute_value.add_lexeme(cr.to_lexeme)
621 621 print 'importing variants...'
622 622 bulk_create(Variant, self.new_variants())
623 623 print 'importing table templates...'
... ...
dictionary/management/commands/import_kipi.py
1 1 #-*- coding:utf-8 -*-
2 2  
3   -import sys
4   -from django.core.management.base import BaseCommand, CommandError
  3 +from django.core.management.base import BaseCommand
5 4 from common.util import debug, suffixes, cut_end
6   -from dictionary.models import Lexeme, Vocabulary, LexemeAssociation, Pattern, \
7   - all_forms, InflectionCharacteristic, get_root, Ending, BaseFormLabel
  5 +from dictionary.models import Lexeme, Pattern, InflectionCharacteristic,\
  6 + Ending, BaseFormLabel
8 7 from dictionary.management.commands.import_morfologik import create_lexeme, \
9   - create_lip, print_data, find_minimal_sets, blacklist_filter, join_many, join, print_forms
  8 + create_lip, print_data, find_minimal_sets, blacklist_filter, join_many, \
  9 + join, print_forms
10 10  
11 11 class Command(BaseCommand):
12 12 args = '<input file name>'
... ...
dictionary/management/commands/import_warszawa.py
1 1 #-*- coding:utf-8 -*-
2 2  
3   -import sys
4   -from django.core.management.base import BaseCommand, CommandError
5   -from common.util import debug
6   -from dictionary.models import Lexeme, Vocabulary, LexemeAssociation, Pattern, \
7   - all_forms, InflectionCharacteristic, get_root
  3 +from django.core.management.base import BaseCommand
  4 +from dictionary.models import Lexeme
8 5 from dictionary.management.commands.import_morfologik import create_lexeme, \
9 6 create_lip, print_data
10 7  
... ...
dictionary/management/commands/init_polimorf.py
1 1 #-*- coding:utf-8 -*-
2 2  
3   -import sys
4   -from django.core.management.base import BaseCommand, CommandError
5   -from common.util import no_history, debug
6   -from dictionary.models import Lexeme, Vocabulary, LexemeAssociation
  3 +from django.core.management.base import BaseCommand
  4 +from common.util import no_history
  5 +from dictionary.models import Lexeme, Vocabulary
7 6  
8 7 class Command(BaseCommand):
9 8 args = 'none'
... ... @@ -18,7 +17,7 @@ def init_polimorf():
18 17 sgjp = Vocabulary.objects.get(id='SGJP')
19 18 existing = Lexeme.objects
20 19 for l in sgjp.owned_lexemes.all():
21   - LexemeAssociation.objects.get_or_create(lexeme=l, vocabulary=pm)
  20 + pm.add_lexeme(l)
22 21 for l in existing.filter(owner_vocabulary__id='Morfologik'):
23 22 if not existing.filter(entry=l.entry, owner_vocabulary__id='SGJP'):
24   - LexemeAssociation.objects.get_or_create(lexeme=l, vocabulary=pm)
  23 + pm.add_lexeme(l)
25 24 \ No newline at end of file
... ...
dictionary/management/commands/load_import.py
... ... @@ -5,7 +5,7 @@ from django.db import transaction
5 5 from django.db.models import Max
6 6 from django.core.management.base import BaseCommand
7 7 from common.util import no_history, debug
8   -from dictionary.models import Lexeme, Pattern, LexemeAssociation, \
  8 +from dictionary.models import Lexeme, Pattern, \
9 9 LexemeInflectionPattern, PartOfSpeech, Vocabulary, InflectionCharacteristic, \
10 10 CrossReference, CrossReferenceType, ClassificationValue
11 11  
... ... @@ -42,8 +42,7 @@ for p in pattern_list:
42 42 pattern_table[p.name] = p
43 43  
44 44 def associate(l):
45   - la, created = LexemeAssociation.objects.get_or_create(
46   - lexeme=l, vocabulary=vocab)
  45 + created = vocab.add_lexeme(l)
47 46 if not created and l.part_of_speech.symbol not in ('ppas', 'pact', 'ger'):
48 47 debug(l.entry, u'wielokrotne przypisanie leksemu do słownika!')
49 48  
... ... @@ -52,15 +51,14 @@ def add_cr(l_from, l_to, symbol):
52 51 symbol=symbol, from_pos=l_from.part_of_speech, to_pos=l_to.part_of_speech)
53 52 CrossReference(from_lexeme=l_from, to_lexeme=l_to, type=cr_type).save()
54 53  
55   -def create_lexeme(entry, part_of_speech, status, comment,
56   - commonness=None):
  54 +def create_lexeme(entry, part_of_speech, status, comment, commonness=None):
57 55 global next_id
58 56 l = Lexeme(id=next_id, entry=entry, part_of_speech=part_of_speech,
59 57 source=source, status=status, comment=comment, owner_vocabulary=vocab)
60 58 l.fix_homonym_number()
61 59 l.save()
62 60 if commonness:
63   - ClassificationValue.objects.get(label=commonness).lexemes.add(l) #add
  61 + ClassificationValue.objects.get(label=commonness).add_lexeme(l)
64 62 associate(l)
65 63 next_id += 1
66 64 return l
... ...
dictionary/migrations/0023_auto__add_lexemecv__add_unique_lexemecv_lexeme_classification_value.py 0 → 100644
  1 +# -*- coding: 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 +
  8 +class Migration(SchemaMigration):
  9 +
  10 + def forwards(self, orm):
  11 + # Adding model 'LexemeCV'
  12 + db.create_table(u'dictionary_lexemecv', (
  13 + (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
  14 + ('lexeme', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['dictionary.Lexeme'])),
  15 + ('classification_value', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['dictionary.ClassificationValue'])),
  16 + ))
  17 + db.send_create_signal(u'dictionary', ['LexemeCV'])
  18 +
  19 + # Adding unique constraint on 'LexemeCV', fields ['lexeme', 'classification_value']
  20 + db.create_unique(u'dictionary_lexemecv', ['lexeme_id', 'classification_value_id'])
  21 +
  22 +
  23 + def backwards(self, orm):
  24 + # Removing unique constraint on 'LexemeCV', fields ['lexeme', 'classification_value']
  25 + db.delete_unique(u'dictionary_lexemecv', ['lexeme_id', 'classification_value_id'])
  26 +
  27 + # Deleting model 'LexemeCV'
  28 + db.delete_table(u'dictionary_lexemecv')
  29 +
  30 +
  31 + models = {
  32 + u'auth.group': {
  33 + 'Meta': {'object_name': 'Group'},
  34 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  35 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
  36 + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
  37 + },
  38 + u'auth.permission': {
  39 + 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
  40 + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  41 + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
  42 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  43 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
  44 + },
  45 + u'auth.user': {
  46 + 'Meta': {'object_name': 'User'},
  47 + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  48 + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
  49 + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  50 + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
  51 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  52 + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
  53 + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  54 + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  55 + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  56 + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  57 + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
  58 + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
  59 + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
  60 + },
  61 + u'contenttypes.contenttype': {
  62 + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
  63 + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  64 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  65 + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  66 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
  67 + },
  68 + u'dictionary.baseformlabel': {
  69 + 'Meta': {'object_name': 'BaseFormLabel', 'db_table': "'efobazy'"},
  70 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  71 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'efobaz'", 'blank': 'True'})
  72 + },
  73 + u'dictionary.cell': {
  74 + 'Meta': {'ordering': "['index']", 'object_name': 'Cell', 'db_table': "'klatki'"},
  75 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  76 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  77 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kind'"}),
  78 + 'prefix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'prefiks'", 'blank': 'True'}),
  79 + 'suffix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'sufiks'", 'blank': 'True'}),
  80 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"}),
  81 + 'tag': ('django.db.models.fields.TextField', [], {'db_column': "'tag'", 'blank': 'True'})
  82 + },
  83 + u'dictionary.classification': {
  84 + 'Meta': {'object_name': 'Classification', 'db_table': "'klasyfikacje'"},
  85 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  86 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"})
  87 + },
  88 + u'dictionary.classificationvalue': {
  89 + 'Meta': {'object_name': 'ClassificationValue', 'db_table': "'wartosci_klasyfikacji'"},
  90 + 'classification': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'db_column': "'klas_id'", 'to': u"orm['dictionary.Classification']"}),
  91 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usunieta'"}),
  92 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  93 + 'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  94 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'cvs'", 'blank': 'True', 'to': u"orm['dictionary.Lexeme']"}),
  95 + 'new_lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeCV']", 'blank': 'True'}),
  96 + 'parent_node': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'child_nodes'", 'null': 'True', 'db_column': "'rodzic'", 'to': u"orm['dictionary.ClassificationValue']"})
  97 + },
  98 + u'dictionary.crossreference': {
  99 + 'Meta': {'object_name': 'CrossReference', 'db_table': "'odsylacze'"},
  100 + 'from_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_to'", 'db_column': "'l_id_od'", 'to': u"orm['dictionary.Lexeme']"}),
  101 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  102 + 'to_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_from'", 'db_column': "'l_id_do'", 'to': u"orm['dictionary.Lexeme']"}),
  103 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.CrossReferenceType']", 'db_column': "'typods_id'"})
  104 + },
  105 + u'dictionary.crossreferencetype': {
  106 + 'Meta': {'object_name': 'CrossReferenceType', 'db_table': "'typyodsylaczy'"},
  107 + 'desc': ('django.db.models.fields.CharField', [], {'max_length': '40', 'db_column': "'naglowek'"}),
  108 + 'from_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_to'", 'db_column': "'pos1'", 'to': u"orm['dictionary.PartOfSpeech']"}),
  109 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  110 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kolejnosc'"}),
  111 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_column': "'typods'"}),
  112 + 'to_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_from'", 'db_column': "'pos2'", 'to': u"orm['dictionary.PartOfSpeech']"})
  113 + },
  114 + u'dictionary.ending': {
  115 + 'Meta': {'ordering': "['index']", 'unique_together': "(('pattern', 'base_form_label', 'index'),)", 'object_name': 'Ending', 'db_table': "'zakonczenia'"},
  116 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  117 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  118 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'zind'"}),
  119 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'endings'", 'db_column': "'w_id'", 'to': u"orm['dictionary.Pattern']"}),
  120 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_zakonczen'", 'blank': 'True'}),
  121 + 'string': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'zak'", 'blank': 'True'})
  122 + },
  123 + u'dictionary.history': {
  124 + 'Meta': {'object_name': 'History', 'db_table': "'history'"},
  125 + 'column_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'column_name_'", 'blank': 'True'}),
  126 + 'column_ord': ('django.db.models.fields.IntegerField', [], {'db_column': "'ordinal_position_of_column_'"}),
  127 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  128 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'null': 'True', 'db_column': "'lexeme_id_'", 'blank': 'True'}),
  129 + 'new_value': ('django.db.models.fields.TextField', [], {'db_column': "'new_value_'", 'blank': 'True'}),
  130 + 'old_value': ('django.db.models.fields.TextField', [], {'db_column': "'old_value_'", 'blank': 'True'}),
  131 + 'operation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'operation_'"}),
  132 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'null': 'True', 'db_column': "'pattern_id_'", 'blank': 'True'}),
  133 + 'row_id': ('django.db.models.fields.IntegerField', [], {'db_column': "'id_'"}),
  134 + 'table_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'table_name_'"}),
  135 + 'table_oid': ('django.db.models.fields.IntegerField', [], {'db_column': "'table_oid_'"}),
  136 + 'timestamp': ('django.db.models.fields.DateTimeField', [], {'db_column': "'timestamp_'"}),
  137 + 'transaction_began': ('django.db.models.fields.DateTimeField', [], {'db_column': "'transaction_began_'"}),
  138 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'db_column': "'user_id_'"})
  139 + },
  140 + u'dictionary.inflectioncharacteristic': {
  141 + 'Meta': {'unique_together': "(('symbol', 'part_of_speech'),)", 'object_name': 'InflectionCharacteristic', 'db_table': "'charfle'"},
  142 + 'basic_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  143 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  144 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  145 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'charfl'", 'blank': 'True'})
  146 + },
  147 + u'dictionary.inputform': {
  148 + 'Meta': {'object_name': 'InputForm'},
  149 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  150 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  151 + 'input_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InputLexeme']"})
  152 + },
  153 + u'dictionary.inputlexeme': {
  154 + 'Meta': {'object_name': 'InputLexeme'},
  155 + 'entry': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  156 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
  157 + },
  158 + u'dictionary.lexeme': {
  159 + 'Meta': {'object_name': 'Lexeme', 'db_table': "'leksemy'"},
  160 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  161 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  162 + 'entry': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '64', 'db_column': "'haslo'", 'blank': 'True'}),
  163 + 'entry_suffix': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'haslosuf'", 'blank': 'True'}),
  164 + 'gloss': ('django.db.models.fields.TextField', [], {'db_column': "'glosa'", 'blank': 'True'}),
  165 + 'homonym_number': ('django.db.models.fields.IntegerField', [], {'default': '1', 'db_column': "'hom'"}),
  166 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  167 + 'last_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_column': "'data_modyfikacji'", 'blank': 'True'}),
  168 + 'note': ('django.db.models.fields.TextField', [], {'db_column': "'nota'", 'blank': 'True'}),
  169 + 'owner_vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owned_lexemes'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"}),
  170 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  171 + 'patterns': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Pattern']", 'through': u"orm['dictionary.LexemeInflectionPattern']", 'symmetrical': 'False'}),
  172 + 'pronunciation': ('django.db.models.fields.TextField', [], {'db_column': "'wymowa'", 'blank': 'True'}),
  173 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_leksemow'", 'blank': 'True'}),
  174 + 'responsible': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'db_column': "'odpowiedzialny'", 'blank': 'True'}),
  175 + 'source': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zrodlo'", 'blank': 'True'}),
  176 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'status'"}),
  177 + 'valence': ('django.db.models.fields.TextField', [], {'blank': 'True'})
  178 + },
  179 + u'dictionary.lexemeassociation': {
  180 + 'Meta': {'object_name': 'LexemeAssociation', 'db_table': "'leksemy_w_slownikach'"},
  181 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  182 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  183 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  184 + },
  185 + u'dictionary.lexemeattribute': {
  186 + 'Meta': {'object_name': 'LexemeAttribute'},
  187 + 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  188 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  189 + 'inflection_characteristics': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'symmetrical': 'False', 'blank': 'True'}),
  190 + 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  191 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
  192 + 'parts_of_speech': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.PartOfSpeech']", 'symmetrical': 'False'}),
  193 + 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  194 + 'takes_ic': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
  195 + },
  196 + u'dictionary.lexemeattributevalue': {
  197 + 'Meta': {'ordering': "['value']", 'object_name': 'LexemeAttributeValue'},
  198 + 'attribute': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'to': u"orm['dictionary.LexemeAttribute']"}),
  199 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  200 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'blank': 'True'}),
  201 + 'value': ('django.db.models.fields.CharField', [], {'max_length': '32'})
  202 + },
  203 + u'dictionary.lexemecv': {
  204 + 'Meta': {'unique_together': "(['lexeme', 'classification_value'],)", 'object_name': 'LexemeCV'},
  205 + 'classification_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.ClassificationValue']"}),
  206 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  207 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  208 + },
  209 + u'dictionary.lexemeform': {
  210 + 'Meta': {'object_name': 'LexemeForm'},
  211 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'}),
  212 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  213 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  214 + },
  215 + u'dictionary.lexemeinflectionpattern': {
  216 + 'Meta': {'ordering': "['index']", 'unique_together': "(('lexeme', 'index'),)", 'object_name': 'LexemeInflectionPattern', 'db_table': "'odmieniasie'"},
  217 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  218 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'oind'"}),
  219 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  220 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  221 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'db_column': "'w_id'"}),
  222 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_odmieniasiow'", 'blank': 'True'}),
  223 + 'root': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'rdzen'"})
  224 + },
  225 + u'dictionary.lexicalclass': {
  226 + 'Meta': {'object_name': 'LexicalClass', 'db_table': "'czescimowy'"},
  227 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'czm'"})
  228 + },
  229 + u'dictionary.paradygmatywsjp': {
  230 + 'Meta': {'object_name': 'ParadygmatyWSJP', 'db_table': "'paradygmatywsjp'"},
  231 + 'charfl': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  232 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  233 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  234 + 'efobaz': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  235 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  236 + 'kskl': ('django.db.models.fields.IntegerField', [], {}),
  237 + 'morf': ('django.db.models.fields.TextField', [], {}),
  238 + 'podparad': ('django.db.models.fields.CharField', [], {'max_length': '4', 'blank': 'True'}),
  239 + 'pref': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  240 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  241 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  242 + 'suf': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  243 + 'typr': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typr'"}),
  244 + 'wariant': ('django.db.models.fields.CharField', [], {'max_length': '4'})
  245 + },
  246 + u'dictionary.partofspeech': {
  247 + 'Meta': {'ordering': "['symbol']", 'object_name': 'PartOfSpeech', 'db_table': "'klasygramatyczne'"},
  248 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  249 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'pos'"})
  250 + },
  251 + u'dictionary.pattern': {
  252 + 'Meta': {'ordering': "['name']", 'object_name': 'Pattern', 'db_table': "'wzory'"},
  253 + 'basic_form_ending': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zakp'", 'blank': 'True'}),
  254 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  255 + 'example': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'przyklad'"}),
  256 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  257 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '32', 'db_column': "'w_id'"}),
  258 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8'}),
  259 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typ'"})
  260 + },
  261 + u'dictionary.patterntype': {
  262 + 'Meta': {'object_name': 'PatternType', 'db_table': "'typywzorow'"},
  263 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  264 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  265 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'wtyp'", 'blank': 'True'})
  266 + },
  267 + u'dictionary.qualifier': {
  268 + 'Meta': {'ordering': "['label']", 'unique_together': "(('label', 'vocabulary'),)", 'object_name': 'Qualifier', 'db_table': "'kwalifikatory'"},
  269 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  270 + 'exclusion_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.QualifierExclusionClass']", 'null': 'True', 'db_column': "'klasa'", 'blank': 'True'}),
  271 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  272 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'kwal'"}),
  273 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'qualifiers'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"})
  274 + },
  275 + u'dictionary.qualifierexclusionclass': {
  276 + 'Meta': {'object_name': 'QualifierExclusionClass', 'db_table': "'klasy_wykluczania'"},
  277 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  278 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  279 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  280 + },
  281 + u'dictionary.savedexportdata': {
  282 + 'Meta': {'object_name': 'SavedExportData'},
  283 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  284 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64'}),
  285 + 'serialized_data': ('django.db.models.fields.TextField', [], {})
  286 + },
  287 + u'dictionary.savedfilter': {
  288 + 'Meta': {'unique_together': "(('name', 'user'),)", 'object_name': 'SavedFilter'},
  289 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  290 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '64'}),
  291 + 'serialized_filter': ('django.db.models.fields.TextField', [], {}),
  292 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']"})
  293 + },
  294 + u'dictionary.tablecell': {
  295 + 'Meta': {'object_name': 'TableCell', 'db_table': "'komorki_tabel'"},
  296 + 'cell': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['dictionary.Cell']", 'unique': 'True', 'db_column': "'k_id'"}),
  297 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  298 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  299 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  300 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  301 + 'rowspan': ('django.db.models.fields.IntegerField', [], {})
  302 + },
  303 + u'dictionary.tableheader': {
  304 + 'Meta': {'object_name': 'TableHeader', 'db_table': "'naglowki_tabel'"},
  305 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  306 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  307 + 'css_class': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'styl'"}),
  308 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  309 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'nagl'", 'blank': 'True'}),
  310 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  311 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  312 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"})
  313 + },
  314 + u'dictionary.tabletemplate': {
  315 + 'Meta': {'object_name': 'TableTemplate', 'db_table': "'szablony_tabel'"},
  316 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  317 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  318 + 'pattern_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'wtyp'"}),
  319 + 'variant': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Variant']", 'db_column': "'wariant'"})
  320 + },
  321 + u'dictionary.variant': {
  322 + 'Meta': {'object_name': 'Variant', 'db_table': "'warianty'"},
  323 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '32', 'primary_key': 'True', 'db_column': "'wariant'"})
  324 + },
  325 + u'dictionary.vocabulary': {
  326 + 'Meta': {'object_name': 'Vocabulary', 'db_table': "'slowniki'"},
  327 + 'classifications': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'to': u"orm['dictionary.Classification']"}),
  328 + 'editors': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'editable_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  329 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '64', 'primary_key': 'True', 'db_column': "'slownik'"}),
  330 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'through': u"orm['dictionary.LexemeAssociation']", 'to': u"orm['dictionary.Lexeme']"}),
  331 + 'managers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'managed_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  332 + 'viewers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'visible_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"})
  333 + }
  334 + }
  335 +
  336 + complete_apps = ['dictionary']
0 337 \ No newline at end of file
... ...
dictionary/migrations/0024_lexemecv.py 0 → 100644
  1 +# -*- coding: utf-8 -*-
  2 +import datetime
  3 +from south.db import db
  4 +from south.v2 import DataMigration
  5 +from django.db import models
  6 +
  7 +class Migration(DataMigration):
  8 +
  9 + def forwards(self, orm):
  10 + for cv in orm.ClassificationValue.objects.all():
  11 + for lexeme in cv.lexemes.all():
  12 + orm.LexemeCV.objects.get_or_create(
  13 + lexeme=lexeme, classification_value=cv)
  14 +
  15 + def backwards(self, orm):
  16 + for cv in orm.ClassificationValue.objects.all():
  17 + for lexeme in cv.new_lexemes.all():
  18 + cv.lexemes.add(lexeme)
  19 +
  20 + models = {
  21 + u'auth.group': {
  22 + 'Meta': {'object_name': 'Group'},
  23 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  24 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
  25 + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
  26 + },
  27 + u'auth.permission': {
  28 + 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
  29 + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  30 + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
  31 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  32 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
  33 + },
  34 + u'auth.user': {
  35 + 'Meta': {'object_name': 'User'},
  36 + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  37 + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
  38 + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  39 + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
  40 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  41 + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
  42 + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  43 + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  44 + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  45 + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  46 + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
  47 + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
  48 + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
  49 + },
  50 + u'contenttypes.contenttype': {
  51 + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
  52 + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  53 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  54 + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  55 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
  56 + },
  57 + u'dictionary.baseformlabel': {
  58 + 'Meta': {'object_name': 'BaseFormLabel', 'db_table': "'efobazy'"},
  59 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  60 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'efobaz'", 'blank': 'True'})
  61 + },
  62 + u'dictionary.cell': {
  63 + 'Meta': {'ordering': "['index']", 'object_name': 'Cell', 'db_table': "'klatki'"},
  64 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  65 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  66 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kind'"}),
  67 + 'prefix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'prefiks'", 'blank': 'True'}),
  68 + 'suffix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'sufiks'", 'blank': 'True'}),
  69 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"}),
  70 + 'tag': ('django.db.models.fields.TextField', [], {'db_column': "'tag'", 'blank': 'True'})
  71 + },
  72 + u'dictionary.classification': {
  73 + 'Meta': {'object_name': 'Classification', 'db_table': "'klasyfikacje'"},
  74 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  75 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"})
  76 + },
  77 + u'dictionary.classificationvalue': {
  78 + 'Meta': {'object_name': 'ClassificationValue', 'db_table': "'wartosci_klasyfikacji'"},
  79 + 'classification': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'db_column': "'klas_id'", 'to': u"orm['dictionary.Classification']"}),
  80 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usunieta'"}),
  81 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  82 + 'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  83 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'cvs'", 'blank': 'True', 'to': u"orm['dictionary.Lexeme']"}),
  84 + 'new_lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeCV']", 'blank': 'True'}),
  85 + 'parent_node': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'child_nodes'", 'null': 'True', 'db_column': "'rodzic'", 'to': u"orm['dictionary.ClassificationValue']"})
  86 + },
  87 + u'dictionary.crossreference': {
  88 + 'Meta': {'object_name': 'CrossReference', 'db_table': "'odsylacze'"},
  89 + 'from_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_to'", 'db_column': "'l_id_od'", 'to': u"orm['dictionary.Lexeme']"}),
  90 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  91 + 'to_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_from'", 'db_column': "'l_id_do'", 'to': u"orm['dictionary.Lexeme']"}),
  92 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.CrossReferenceType']", 'db_column': "'typods_id'"})
  93 + },
  94 + u'dictionary.crossreferencetype': {
  95 + 'Meta': {'object_name': 'CrossReferenceType', 'db_table': "'typyodsylaczy'"},
  96 + 'desc': ('django.db.models.fields.CharField', [], {'max_length': '40', 'db_column': "'naglowek'"}),
  97 + 'from_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_to'", 'db_column': "'pos1'", 'to': u"orm['dictionary.PartOfSpeech']"}),
  98 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  99 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kolejnosc'"}),
  100 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_column': "'typods'"}),
  101 + 'to_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_from'", 'db_column': "'pos2'", 'to': u"orm['dictionary.PartOfSpeech']"})
  102 + },
  103 + u'dictionary.ending': {
  104 + 'Meta': {'ordering': "['index']", 'unique_together': "(('pattern', 'base_form_label', 'index'),)", 'object_name': 'Ending', 'db_table': "'zakonczenia'"},
  105 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  106 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  107 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'zind'"}),
  108 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'endings'", 'db_column': "'w_id'", 'to': u"orm['dictionary.Pattern']"}),
  109 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_zakonczen'", 'blank': 'True'}),
  110 + 'string': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'zak'", 'blank': 'True'})
  111 + },
  112 + u'dictionary.history': {
  113 + 'Meta': {'object_name': 'History', 'db_table': "'history'"},
  114 + 'column_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'column_name_'", 'blank': 'True'}),
  115 + 'column_ord': ('django.db.models.fields.IntegerField', [], {'db_column': "'ordinal_position_of_column_'"}),
  116 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  117 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'null': 'True', 'db_column': "'lexeme_id_'", 'blank': 'True'}),
  118 + 'new_value': ('django.db.models.fields.TextField', [], {'db_column': "'new_value_'", 'blank': 'True'}),
  119 + 'old_value': ('django.db.models.fields.TextField', [], {'db_column': "'old_value_'", 'blank': 'True'}),
  120 + 'operation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'operation_'"}),
  121 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'null': 'True', 'db_column': "'pattern_id_'", 'blank': 'True'}),
  122 + 'row_id': ('django.db.models.fields.IntegerField', [], {'db_column': "'id_'"}),
  123 + 'table_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'table_name_'"}),
  124 + 'table_oid': ('django.db.models.fields.IntegerField', [], {'db_column': "'table_oid_'"}),
  125 + 'timestamp': ('django.db.models.fields.DateTimeField', [], {'db_column': "'timestamp_'"}),
  126 + 'transaction_began': ('django.db.models.fields.DateTimeField', [], {'db_column': "'transaction_began_'"}),
  127 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'db_column': "'user_id_'"})
  128 + },
  129 + u'dictionary.inflectioncharacteristic': {
  130 + 'Meta': {'unique_together': "(('symbol', 'part_of_speech'),)", 'object_name': 'InflectionCharacteristic', 'db_table': "'charfle'"},
  131 + 'basic_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  132 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  133 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  134 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'charfl'", 'blank': 'True'})
  135 + },
  136 + u'dictionary.inputform': {
  137 + 'Meta': {'object_name': 'InputForm'},
  138 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  139 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  140 + 'input_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InputLexeme']"})
  141 + },
  142 + u'dictionary.inputlexeme': {
  143 + 'Meta': {'object_name': 'InputLexeme'},
  144 + 'entry': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  145 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
  146 + },
  147 + u'dictionary.lexeme': {
  148 + 'Meta': {'object_name': 'Lexeme', 'db_table': "'leksemy'"},
  149 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  150 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  151 + 'entry': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '64', 'db_column': "'haslo'", 'blank': 'True'}),
  152 + 'entry_suffix': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'haslosuf'", 'blank': 'True'}),
  153 + 'gloss': ('django.db.models.fields.TextField', [], {'db_column': "'glosa'", 'blank': 'True'}),
  154 + 'homonym_number': ('django.db.models.fields.IntegerField', [], {'default': '1', 'db_column': "'hom'"}),
  155 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  156 + 'last_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_column': "'data_modyfikacji'", 'blank': 'True'}),
  157 + 'note': ('django.db.models.fields.TextField', [], {'db_column': "'nota'", 'blank': 'True'}),
  158 + 'owner_vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owned_lexemes'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"}),
  159 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  160 + 'patterns': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Pattern']", 'through': u"orm['dictionary.LexemeInflectionPattern']", 'symmetrical': 'False'}),
  161 + 'pronunciation': ('django.db.models.fields.TextField', [], {'db_column': "'wymowa'", 'blank': 'True'}),
  162 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_leksemow'", 'blank': 'True'}),
  163 + 'responsible': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'db_column': "'odpowiedzialny'", 'blank': 'True'}),
  164 + 'source': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zrodlo'", 'blank': 'True'}),
  165 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'status'"}),
  166 + 'valence': ('django.db.models.fields.TextField', [], {'blank': 'True'})
  167 + },
  168 + u'dictionary.lexemeassociation': {
  169 + 'Meta': {'object_name': 'LexemeAssociation', 'db_table': "'leksemy_w_slownikach'"},
  170 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  171 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  172 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  173 + },
  174 + u'dictionary.lexemeattribute': {
  175 + 'Meta': {'object_name': 'LexemeAttribute'},
  176 + 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  177 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  178 + 'inflection_characteristics': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'symmetrical': 'False', 'blank': 'True'}),
  179 + 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  180 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
  181 + 'parts_of_speech': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.PartOfSpeech']", 'symmetrical': 'False'}),
  182 + 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  183 + 'takes_ic': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
  184 + },
  185 + u'dictionary.lexemeattributevalue': {
  186 + 'Meta': {'ordering': "['value']", 'object_name': 'LexemeAttributeValue'},
  187 + 'attribute': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'to': u"orm['dictionary.LexemeAttribute']"}),
  188 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  189 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'blank': 'True'}),
  190 + 'value': ('django.db.models.fields.CharField', [], {'max_length': '32'})
  191 + },
  192 + u'dictionary.lexemecv': {
  193 + 'Meta': {'unique_together': "(['lexeme', 'classification_value'],)", 'object_name': 'LexemeCV'},
  194 + 'classification_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.ClassificationValue']"}),
  195 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  196 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  197 + },
  198 + u'dictionary.lexemeform': {
  199 + 'Meta': {'object_name': 'LexemeForm'},
  200 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'}),
  201 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  202 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  203 + },
  204 + u'dictionary.lexemeinflectionpattern': {
  205 + 'Meta': {'ordering': "['index']", 'unique_together': "(('lexeme', 'index'),)", 'object_name': 'LexemeInflectionPattern', 'db_table': "'odmieniasie'"},
  206 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  207 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'oind'"}),
  208 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  209 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  210 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'db_column': "'w_id'"}),
  211 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_odmieniasiow'", 'blank': 'True'}),
  212 + 'root': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'rdzen'"})
  213 + },
  214 + u'dictionary.lexicalclass': {
  215 + 'Meta': {'object_name': 'LexicalClass', 'db_table': "'czescimowy'"},
  216 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'czm'"})
  217 + },
  218 + u'dictionary.paradygmatywsjp': {
  219 + 'Meta': {'object_name': 'ParadygmatyWSJP', 'db_table': "'paradygmatywsjp'"},
  220 + 'charfl': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  221 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  222 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  223 + 'efobaz': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  224 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  225 + 'kskl': ('django.db.models.fields.IntegerField', [], {}),
  226 + 'morf': ('django.db.models.fields.TextField', [], {}),
  227 + 'podparad': ('django.db.models.fields.CharField', [], {'max_length': '4', 'blank': 'True'}),
  228 + 'pref': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  229 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  230 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  231 + 'suf': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  232 + 'typr': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typr'"}),
  233 + 'wariant': ('django.db.models.fields.CharField', [], {'max_length': '4'})
  234 + },
  235 + u'dictionary.partofspeech': {
  236 + 'Meta': {'ordering': "['symbol']", 'object_name': 'PartOfSpeech', 'db_table': "'klasygramatyczne'"},
  237 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  238 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'pos'"})
  239 + },
  240 + u'dictionary.pattern': {
  241 + 'Meta': {'ordering': "['name']", 'object_name': 'Pattern', 'db_table': "'wzory'"},
  242 + 'basic_form_ending': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zakp'", 'blank': 'True'}),
  243 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  244 + 'example': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'przyklad'"}),
  245 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  246 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '32', 'db_column': "'w_id'"}),
  247 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8'}),
  248 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typ'"})
  249 + },
  250 + u'dictionary.patterntype': {
  251 + 'Meta': {'object_name': 'PatternType', 'db_table': "'typywzorow'"},
  252 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  253 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  254 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'wtyp'", 'blank': 'True'})
  255 + },
  256 + u'dictionary.qualifier': {
  257 + 'Meta': {'ordering': "['label']", 'unique_together': "(('label', 'vocabulary'),)", 'object_name': 'Qualifier', 'db_table': "'kwalifikatory'"},
  258 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  259 + 'exclusion_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.QualifierExclusionClass']", 'null': 'True', 'db_column': "'klasa'", 'blank': 'True'}),
  260 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  261 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'kwal'"}),
  262 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'qualifiers'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"})
  263 + },
  264 + u'dictionary.qualifierexclusionclass': {
  265 + 'Meta': {'object_name': 'QualifierExclusionClass', 'db_table': "'klasy_wykluczania'"},
  266 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  267 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  268 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  269 + },
  270 + u'dictionary.savedexportdata': {
  271 + 'Meta': {'object_name': 'SavedExportData'},
  272 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  273 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64'}),
  274 + 'serialized_data': ('django.db.models.fields.TextField', [], {})
  275 + },
  276 + u'dictionary.savedfilter': {
  277 + 'Meta': {'unique_together': "(('name', 'user'),)", 'object_name': 'SavedFilter'},
  278 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  279 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '64'}),
  280 + 'serialized_filter': ('django.db.models.fields.TextField', [], {}),
  281 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']"})
  282 + },
  283 + u'dictionary.tablecell': {
  284 + 'Meta': {'object_name': 'TableCell', 'db_table': "'komorki_tabel'"},
  285 + 'cell': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['dictionary.Cell']", 'unique': 'True', 'db_column': "'k_id'"}),
  286 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  287 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  288 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  289 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  290 + 'rowspan': ('django.db.models.fields.IntegerField', [], {})
  291 + },
  292 + u'dictionary.tableheader': {
  293 + 'Meta': {'object_name': 'TableHeader', 'db_table': "'naglowki_tabel'"},
  294 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  295 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  296 + 'css_class': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'styl'"}),
  297 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  298 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'nagl'", 'blank': 'True'}),
  299 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  300 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  301 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"})
  302 + },
  303 + u'dictionary.tabletemplate': {
  304 + 'Meta': {'object_name': 'TableTemplate', 'db_table': "'szablony_tabel'"},
  305 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  306 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  307 + 'pattern_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'wtyp'"}),
  308 + 'variant': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Variant']", 'db_column': "'wariant'"})
  309 + },
  310 + u'dictionary.variant': {
  311 + 'Meta': {'object_name': 'Variant', 'db_table': "'warianty'"},
  312 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '32', 'primary_key': 'True', 'db_column': "'wariant'"})
  313 + },
  314 + u'dictionary.vocabulary': {
  315 + 'Meta': {'object_name': 'Vocabulary', 'db_table': "'slowniki'"},
  316 + 'classifications': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'to': u"orm['dictionary.Classification']"}),
  317 + 'editors': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'editable_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  318 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '64', 'primary_key': 'True', 'db_column': "'slownik'"}),
  319 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'through': u"orm['dictionary.LexemeAssociation']", 'to': u"orm['dictionary.Lexeme']"}),
  320 + 'managers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'managed_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  321 + 'viewers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'visible_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"})
  322 + }
  323 + }
  324 +
  325 + complete_apps = ['dictionary']
  326 + symmetrical = True
... ...
dictionary/migrations/0025_auto.py 0 → 100644
  1 +# -*- coding: 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 +
  8 +class Migration(SchemaMigration):
  9 +
  10 + def forwards(self, orm):
  11 + # Removing M2M table for field lexemes on 'ClassificationValue'
  12 + db.delete_table('wartosci_klasyfikacji_lexemes')
  13 +
  14 +
  15 + def backwards(self, orm):
  16 + # Adding M2M table for field lexemes on 'ClassificationValue'
  17 + db.create_table('wartosci_klasyfikacji_lexemes', (
  18 + ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)),
  19 + ('classificationvalue', models.ForeignKey(orm[u'dictionary.classificationvalue'], null=False)),
  20 + ('lexeme', models.ForeignKey(orm[u'dictionary.lexeme'], null=False))
  21 + ))
  22 + db.create_unique('wartosci_klasyfikacji_lexemes', ['classificationvalue_id', 'lexeme_id'])
  23 +
  24 +
  25 + models = {
  26 + u'auth.group': {
  27 + 'Meta': {'object_name': 'Group'},
  28 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  29 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
  30 + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
  31 + },
  32 + u'auth.permission': {
  33 + 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
  34 + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  35 + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
  36 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  37 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
  38 + },
  39 + u'auth.user': {
  40 + 'Meta': {'object_name': 'User'},
  41 + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  42 + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
  43 + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  44 + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
  45 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  46 + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
  47 + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  48 + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  49 + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  50 + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  51 + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
  52 + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
  53 + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
  54 + },
  55 + u'contenttypes.contenttype': {
  56 + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
  57 + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  58 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  59 + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  60 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
  61 + },
  62 + u'dictionary.baseformlabel': {
  63 + 'Meta': {'object_name': 'BaseFormLabel', 'db_table': "'efobazy'"},
  64 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  65 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'efobaz'", 'blank': 'True'})
  66 + },
  67 + u'dictionary.cell': {
  68 + 'Meta': {'ordering': "['index']", 'object_name': 'Cell', 'db_table': "'klatki'"},
  69 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  70 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  71 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kind'"}),
  72 + 'prefix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'prefiks'", 'blank': 'True'}),
  73 + 'suffix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'sufiks'", 'blank': 'True'}),
  74 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"}),
  75 + 'tag': ('django.db.models.fields.TextField', [], {'db_column': "'tag'", 'blank': 'True'})
  76 + },
  77 + u'dictionary.classification': {
  78 + 'Meta': {'object_name': 'Classification', 'db_table': "'klasyfikacje'"},
  79 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  80 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"})
  81 + },
  82 + u'dictionary.classificationvalue': {
  83 + 'Meta': {'object_name': 'ClassificationValue', 'db_table': "'wartosci_klasyfikacji'"},
  84 + 'classification': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'db_column': "'klas_id'", 'to': u"orm['dictionary.Classification']"}),
  85 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usunieta'"}),
  86 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  87 + 'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  88 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeCV']", 'blank': 'True'}),
  89 + 'parent_node': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'child_nodes'", 'null': 'True', 'db_column': "'rodzic'", 'to': u"orm['dictionary.ClassificationValue']"})
  90 + },
  91 + u'dictionary.crossreference': {
  92 + 'Meta': {'object_name': 'CrossReference', 'db_table': "'odsylacze'"},
  93 + 'from_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_to'", 'db_column': "'l_id_od'", 'to': u"orm['dictionary.Lexeme']"}),
  94 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  95 + 'to_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_from'", 'db_column': "'l_id_do'", 'to': u"orm['dictionary.Lexeme']"}),
  96 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.CrossReferenceType']", 'db_column': "'typods_id'"})
  97 + },
  98 + u'dictionary.crossreferencetype': {
  99 + 'Meta': {'object_name': 'CrossReferenceType', 'db_table': "'typyodsylaczy'"},
  100 + 'desc': ('django.db.models.fields.CharField', [], {'max_length': '40', 'db_column': "'naglowek'"}),
  101 + 'from_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_to'", 'db_column': "'pos1'", 'to': u"orm['dictionary.PartOfSpeech']"}),
  102 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  103 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kolejnosc'"}),
  104 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_column': "'typods'"}),
  105 + 'to_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_from'", 'db_column': "'pos2'", 'to': u"orm['dictionary.PartOfSpeech']"})
  106 + },
  107 + u'dictionary.ending': {
  108 + 'Meta': {'ordering': "['index']", 'unique_together': "(('pattern', 'base_form_label', 'index'),)", 'object_name': 'Ending', 'db_table': "'zakonczenia'"},
  109 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  110 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  111 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'zind'"}),
  112 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'endings'", 'db_column': "'w_id'", 'to': u"orm['dictionary.Pattern']"}),
  113 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_zakonczen'", 'blank': 'True'}),
  114 + 'string': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'zak'", 'blank': 'True'})
  115 + },
  116 + u'dictionary.history': {
  117 + 'Meta': {'object_name': 'History', 'db_table': "'history'"},
  118 + 'column_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'column_name_'", 'blank': 'True'}),
  119 + 'column_ord': ('django.db.models.fields.IntegerField', [], {'db_column': "'ordinal_position_of_column_'"}),
  120 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  121 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'null': 'True', 'db_column': "'lexeme_id_'", 'blank': 'True'}),
  122 + 'new_value': ('django.db.models.fields.TextField', [], {'db_column': "'new_value_'", 'blank': 'True'}),
  123 + 'old_value': ('django.db.models.fields.TextField', [], {'db_column': "'old_value_'", 'blank': 'True'}),
  124 + 'operation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'operation_'"}),
  125 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'null': 'True', 'db_column': "'pattern_id_'", 'blank': 'True'}),
  126 + 'row_id': ('django.db.models.fields.IntegerField', [], {'db_column': "'id_'"}),
  127 + 'table_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'table_name_'"}),
  128 + 'table_oid': ('django.db.models.fields.IntegerField', [], {'db_column': "'table_oid_'"}),
  129 + 'timestamp': ('django.db.models.fields.DateTimeField', [], {'db_column': "'timestamp_'"}),
  130 + 'transaction_began': ('django.db.models.fields.DateTimeField', [], {'db_column': "'transaction_began_'"}),
  131 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'db_column': "'user_id_'"})
  132 + },
  133 + u'dictionary.inflectioncharacteristic': {
  134 + 'Meta': {'unique_together': "(('symbol', 'part_of_speech'),)", 'object_name': 'InflectionCharacteristic', 'db_table': "'charfle'"},
  135 + 'basic_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  136 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  137 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  138 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'charfl'", 'blank': 'True'})
  139 + },
  140 + u'dictionary.inputform': {
  141 + 'Meta': {'object_name': 'InputForm'},
  142 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  143 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  144 + 'input_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InputLexeme']"})
  145 + },
  146 + u'dictionary.inputlexeme': {
  147 + 'Meta': {'object_name': 'InputLexeme'},
  148 + 'entry': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  149 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
  150 + },
  151 + u'dictionary.lexeme': {
  152 + 'Meta': {'object_name': 'Lexeme', 'db_table': "'leksemy'"},
  153 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  154 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  155 + 'entry': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '64', 'db_column': "'haslo'", 'blank': 'True'}),
  156 + 'entry_suffix': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'haslosuf'", 'blank': 'True'}),
  157 + 'gloss': ('django.db.models.fields.TextField', [], {'db_column': "'glosa'", 'blank': 'True'}),
  158 + 'homonym_number': ('django.db.models.fields.IntegerField', [], {'default': '1', 'db_column': "'hom'"}),
  159 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  160 + 'last_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_column': "'data_modyfikacji'", 'blank': 'True'}),
  161 + 'note': ('django.db.models.fields.TextField', [], {'db_column': "'nota'", 'blank': 'True'}),
  162 + 'owner_vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owned_lexemes'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"}),
  163 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  164 + 'patterns': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Pattern']", 'through': u"orm['dictionary.LexemeInflectionPattern']", 'symmetrical': 'False'}),
  165 + 'pronunciation': ('django.db.models.fields.TextField', [], {'db_column': "'wymowa'", 'blank': 'True'}),
  166 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_leksemow'", 'blank': 'True'}),
  167 + 'responsible': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'db_column': "'odpowiedzialny'", 'blank': 'True'}),
  168 + 'source': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zrodlo'", 'blank': 'True'}),
  169 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'status'"}),
  170 + 'valence': ('django.db.models.fields.TextField', [], {'blank': 'True'})
  171 + },
  172 + u'dictionary.lexemeassociation': {
  173 + 'Meta': {'object_name': 'LexemeAssociation', 'db_table': "'leksemy_w_slownikach'"},
  174 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  175 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  176 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  177 + },
  178 + u'dictionary.lexemeattribute': {
  179 + 'Meta': {'object_name': 'LexemeAttribute'},
  180 + 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  181 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  182 + 'inflection_characteristics': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'symmetrical': 'False', 'blank': 'True'}),
  183 + 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  184 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
  185 + 'parts_of_speech': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.PartOfSpeech']", 'symmetrical': 'False'}),
  186 + 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  187 + 'takes_ic': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
  188 + },
  189 + u'dictionary.lexemeattributevalue': {
  190 + 'Meta': {'ordering': "['value']", 'object_name': 'LexemeAttributeValue'},
  191 + 'attribute': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'to': u"orm['dictionary.LexemeAttribute']"}),
  192 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  193 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'blank': 'True'}),
  194 + 'value': ('django.db.models.fields.CharField', [], {'max_length': '32'})
  195 + },
  196 + u'dictionary.lexemecv': {
  197 + 'Meta': {'unique_together': "(['lexeme', 'classification_value'],)", 'object_name': 'LexemeCV'},
  198 + 'classification_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.ClassificationValue']"}),
  199 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  200 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  201 + },
  202 + u'dictionary.lexemeform': {
  203 + 'Meta': {'object_name': 'LexemeForm'},
  204 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'}),
  205 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  206 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  207 + },
  208 + u'dictionary.lexemeinflectionpattern': {
  209 + 'Meta': {'ordering': "['index']", 'unique_together': "(('lexeme', 'index'),)", 'object_name': 'LexemeInflectionPattern', 'db_table': "'odmieniasie'"},
  210 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  211 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'oind'"}),
  212 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  213 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  214 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'db_column': "'w_id'"}),
  215 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_odmieniasiow'", 'blank': 'True'}),
  216 + 'root': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'rdzen'"})
  217 + },
  218 + u'dictionary.lexicalclass': {
  219 + 'Meta': {'object_name': 'LexicalClass', 'db_table': "'czescimowy'"},
  220 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'czm'"})
  221 + },
  222 + u'dictionary.paradygmatywsjp': {
  223 + 'Meta': {'object_name': 'ParadygmatyWSJP', 'db_table': "'paradygmatywsjp'"},
  224 + 'charfl': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  225 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  226 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  227 + 'efobaz': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  228 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  229 + 'kskl': ('django.db.models.fields.IntegerField', [], {}),
  230 + 'morf': ('django.db.models.fields.TextField', [], {}),
  231 + 'podparad': ('django.db.models.fields.CharField', [], {'max_length': '4', 'blank': 'True'}),
  232 + 'pref': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  233 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  234 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  235 + 'suf': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  236 + 'typr': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typr'"}),
  237 + 'wariant': ('django.db.models.fields.CharField', [], {'max_length': '4'})
  238 + },
  239 + u'dictionary.partofspeech': {
  240 + 'Meta': {'ordering': "['symbol']", 'object_name': 'PartOfSpeech', 'db_table': "'klasygramatyczne'"},
  241 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  242 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'pos'"})
  243 + },
  244 + u'dictionary.pattern': {
  245 + 'Meta': {'ordering': "['name']", 'object_name': 'Pattern', 'db_table': "'wzory'"},
  246 + 'basic_form_ending': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zakp'", 'blank': 'True'}),
  247 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  248 + 'example': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'przyklad'"}),
  249 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  250 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '32', 'db_column': "'w_id'"}),
  251 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8'}),
  252 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typ'"})
  253 + },
  254 + u'dictionary.patterntype': {
  255 + 'Meta': {'object_name': 'PatternType', 'db_table': "'typywzorow'"},
  256 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  257 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  258 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'wtyp'", 'blank': 'True'})
  259 + },
  260 + u'dictionary.qualifier': {
  261 + 'Meta': {'ordering': "['label']", 'unique_together': "(('label', 'vocabulary'),)", 'object_name': 'Qualifier', 'db_table': "'kwalifikatory'"},
  262 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  263 + 'exclusion_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.QualifierExclusionClass']", 'null': 'True', 'db_column': "'klasa'", 'blank': 'True'}),
  264 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  265 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'kwal'"}),
  266 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'qualifiers'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"})
  267 + },
  268 + u'dictionary.qualifierexclusionclass': {
  269 + 'Meta': {'object_name': 'QualifierExclusionClass', 'db_table': "'klasy_wykluczania'"},
  270 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  271 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  272 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  273 + },
  274 + u'dictionary.savedexportdata': {
  275 + 'Meta': {'object_name': 'SavedExportData'},
  276 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  277 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64'}),
  278 + 'serialized_data': ('django.db.models.fields.TextField', [], {})
  279 + },
  280 + u'dictionary.savedfilter': {
  281 + 'Meta': {'unique_together': "(('name', 'user'),)", 'object_name': 'SavedFilter'},
  282 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  283 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '64'}),
  284 + 'serialized_filter': ('django.db.models.fields.TextField', [], {}),
  285 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']"})
  286 + },
  287 + u'dictionary.tablecell': {
  288 + 'Meta': {'object_name': 'TableCell', 'db_table': "'komorki_tabel'"},
  289 + 'cell': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['dictionary.Cell']", 'unique': 'True', 'db_column': "'k_id'"}),
  290 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  291 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  292 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  293 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  294 + 'rowspan': ('django.db.models.fields.IntegerField', [], {})
  295 + },
  296 + u'dictionary.tableheader': {
  297 + 'Meta': {'object_name': 'TableHeader', 'db_table': "'naglowki_tabel'"},
  298 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  299 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  300 + 'css_class': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'styl'"}),
  301 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  302 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'nagl'", 'blank': 'True'}),
  303 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  304 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  305 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"})
  306 + },
  307 + u'dictionary.tabletemplate': {
  308 + 'Meta': {'object_name': 'TableTemplate', 'db_table': "'szablony_tabel'"},
  309 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  310 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  311 + 'pattern_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'wtyp'"}),
  312 + 'variant': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Variant']", 'db_column': "'wariant'"})
  313 + },
  314 + u'dictionary.variant': {
  315 + 'Meta': {'object_name': 'Variant', 'db_table': "'warianty'"},
  316 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '32', 'primary_key': 'True', 'db_column': "'wariant'"})
  317 + },
  318 + u'dictionary.vocabulary': {
  319 + 'Meta': {'object_name': 'Vocabulary', 'db_table': "'slowniki'"},
  320 + 'classifications': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'to': u"orm['dictionary.Classification']"}),
  321 + 'editors': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'editable_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  322 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '64', 'primary_key': 'True', 'db_column': "'slownik'"}),
  323 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'through': u"orm['dictionary.LexemeAssociation']", 'to': u"orm['dictionary.Lexeme']"}),
  324 + 'managers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'managed_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  325 + 'viewers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'visible_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"})
  326 + }
  327 + }
  328 +
  329 + complete_apps = ['dictionary']
0 330 \ No newline at end of file
... ...
dictionary/migrations/0026_auto__add_lexemeav__add_unique_lexemeav_lexeme_attribute_value__add_un.py 0 → 100644
  1 +# -*- coding: 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 +
  8 +class Migration(SchemaMigration):
  9 +
  10 + def forwards(self, orm):
  11 + # Adding model 'LexemeAV'
  12 + db.create_table(u'dictionary_lexemeav', (
  13 + (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
  14 + ('lexeme', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['dictionary.Lexeme'])),
  15 + ('attribute_value', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['dictionary.LexemeAttributeValue'])),
  16 + ))
  17 + db.send_create_signal(u'dictionary', ['LexemeAV'])
  18 +
  19 + # Adding unique constraint on 'LexemeAV', fields ['lexeme', 'attribute_value']
  20 + db.create_unique(u'dictionary_lexemeav', ['lexeme_id', 'attribute_value_id'])
  21 +
  22 + # Adding unique constraint on 'LexemeAssociation', fields ['lexeme', 'vocabulary']
  23 + db.create_unique('leksemy_w_slownikach', ['l_id', 'slownik'])
  24 +
  25 +
  26 + def backwards(self, orm):
  27 + # Removing unique constraint on 'LexemeAssociation', fields ['lexeme', 'vocabulary']
  28 + db.delete_unique('leksemy_w_slownikach', ['l_id', 'slownik'])
  29 +
  30 + # Removing unique constraint on 'LexemeAV', fields ['lexeme', 'attribute_value']
  31 + db.delete_unique(u'dictionary_lexemeav', ['lexeme_id', 'attribute_value_id'])
  32 +
  33 + # Deleting model 'LexemeAV'
  34 + db.delete_table(u'dictionary_lexemeav')
  35 +
  36 +
  37 + models = {
  38 + u'auth.group': {
  39 + 'Meta': {'object_name': 'Group'},
  40 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  41 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
  42 + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
  43 + },
  44 + u'auth.permission': {
  45 + 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
  46 + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  47 + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
  48 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  49 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
  50 + },
  51 + u'auth.user': {
  52 + 'Meta': {'object_name': 'User'},
  53 + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  54 + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
  55 + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  56 + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
  57 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  58 + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
  59 + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  60 + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  61 + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  62 + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  63 + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
  64 + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
  65 + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
  66 + },
  67 + u'contenttypes.contenttype': {
  68 + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
  69 + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  70 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  71 + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  72 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
  73 + },
  74 + u'dictionary.baseformlabel': {
  75 + 'Meta': {'object_name': 'BaseFormLabel', 'db_table': "'efobazy'"},
  76 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  77 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'efobaz'", 'blank': 'True'})
  78 + },
  79 + u'dictionary.cell': {
  80 + 'Meta': {'ordering': "['index']", 'object_name': 'Cell', 'db_table': "'klatki'"},
  81 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  82 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  83 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kind'"}),
  84 + 'prefix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'prefiks'", 'blank': 'True'}),
  85 + 'suffix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'sufiks'", 'blank': 'True'}),
  86 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"}),
  87 + 'tag': ('django.db.models.fields.TextField', [], {'db_column': "'tag'", 'blank': 'True'})
  88 + },
  89 + u'dictionary.classification': {
  90 + 'Meta': {'object_name': 'Classification', 'db_table': "'klasyfikacje'"},
  91 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  92 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"})
  93 + },
  94 + u'dictionary.classificationvalue': {
  95 + 'Meta': {'object_name': 'ClassificationValue', 'db_table': "'wartosci_klasyfikacji'"},
  96 + 'classification': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'db_column': "'klas_id'", 'to': u"orm['dictionary.Classification']"}),
  97 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usunieta'"}),
  98 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  99 + 'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  100 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeCV']", 'blank': 'True'}),
  101 + 'parent_node': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'child_nodes'", 'null': 'True', 'db_column': "'rodzic'", 'to': u"orm['dictionary.ClassificationValue']"})
  102 + },
  103 + u'dictionary.crossreference': {
  104 + 'Meta': {'object_name': 'CrossReference', 'db_table': "'odsylacze'"},
  105 + 'from_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_to'", 'db_column': "'l_id_od'", 'to': u"orm['dictionary.Lexeme']"}),
  106 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  107 + 'to_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_from'", 'db_column': "'l_id_do'", 'to': u"orm['dictionary.Lexeme']"}),
  108 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.CrossReferenceType']", 'db_column': "'typods_id'"})
  109 + },
  110 + u'dictionary.crossreferencetype': {
  111 + 'Meta': {'object_name': 'CrossReferenceType', 'db_table': "'typyodsylaczy'"},
  112 + 'desc': ('django.db.models.fields.CharField', [], {'max_length': '40', 'db_column': "'naglowek'"}),
  113 + 'from_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_to'", 'db_column': "'pos1'", 'to': u"orm['dictionary.PartOfSpeech']"}),
  114 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  115 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kolejnosc'"}),
  116 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_column': "'typods'"}),
  117 + 'to_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_from'", 'db_column': "'pos2'", 'to': u"orm['dictionary.PartOfSpeech']"})
  118 + },
  119 + u'dictionary.ending': {
  120 + 'Meta': {'ordering': "['index']", 'unique_together': "(('pattern', 'base_form_label', 'index'),)", 'object_name': 'Ending', 'db_table': "'zakonczenia'"},
  121 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  122 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  123 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'zind'"}),
  124 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'endings'", 'db_column': "'w_id'", 'to': u"orm['dictionary.Pattern']"}),
  125 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_zakonczen'", 'blank': 'True'}),
  126 + 'string': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'zak'", 'blank': 'True'})
  127 + },
  128 + u'dictionary.history': {
  129 + 'Meta': {'object_name': 'History', 'db_table': "'history'"},
  130 + 'column_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'column_name_'", 'blank': 'True'}),
  131 + 'column_ord': ('django.db.models.fields.IntegerField', [], {'db_column': "'ordinal_position_of_column_'"}),
  132 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  133 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'null': 'True', 'db_column': "'lexeme_id_'", 'blank': 'True'}),
  134 + 'new_value': ('django.db.models.fields.TextField', [], {'db_column': "'new_value_'", 'blank': 'True'}),
  135 + 'old_value': ('django.db.models.fields.TextField', [], {'db_column': "'old_value_'", 'blank': 'True'}),
  136 + 'operation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'operation_'"}),
  137 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'null': 'True', 'db_column': "'pattern_id_'", 'blank': 'True'}),
  138 + 'row_id': ('django.db.models.fields.IntegerField', [], {'db_column': "'id_'"}),
  139 + 'table_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'table_name_'"}),
  140 + 'table_oid': ('django.db.models.fields.IntegerField', [], {'db_column': "'table_oid_'"}),
  141 + 'timestamp': ('django.db.models.fields.DateTimeField', [], {'db_column': "'timestamp_'"}),
  142 + 'transaction_began': ('django.db.models.fields.DateTimeField', [], {'db_column': "'transaction_began_'"}),
  143 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'db_column': "'user_id_'"})
  144 + },
  145 + u'dictionary.inflectioncharacteristic': {
  146 + 'Meta': {'unique_together': "(('symbol', 'part_of_speech'),)", 'object_name': 'InflectionCharacteristic', 'db_table': "'charfle'"},
  147 + 'basic_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  148 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  149 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  150 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'charfl'", 'blank': 'True'})
  151 + },
  152 + u'dictionary.inputform': {
  153 + 'Meta': {'object_name': 'InputForm'},
  154 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  155 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  156 + 'input_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InputLexeme']"})
  157 + },
  158 + u'dictionary.inputlexeme': {
  159 + 'Meta': {'object_name': 'InputLexeme'},
  160 + 'entry': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  161 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
  162 + },
  163 + u'dictionary.lexeme': {
  164 + 'Meta': {'object_name': 'Lexeme', 'db_table': "'leksemy'"},
  165 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  166 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  167 + 'entry': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '64', 'db_column': "'haslo'", 'blank': 'True'}),
  168 + 'entry_suffix': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'haslosuf'", 'blank': 'True'}),
  169 + 'gloss': ('django.db.models.fields.TextField', [], {'db_column': "'glosa'", 'blank': 'True'}),
  170 + 'homonym_number': ('django.db.models.fields.IntegerField', [], {'default': '1', 'db_column': "'hom'"}),
  171 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  172 + 'last_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_column': "'data_modyfikacji'", 'blank': 'True'}),
  173 + 'note': ('django.db.models.fields.TextField', [], {'db_column': "'nota'", 'blank': 'True'}),
  174 + 'owner_vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owned_lexemes'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"}),
  175 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  176 + 'patterns': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Pattern']", 'through': u"orm['dictionary.LexemeInflectionPattern']", 'symmetrical': 'False'}),
  177 + 'pronunciation': ('django.db.models.fields.TextField', [], {'db_column': "'wymowa'", 'blank': 'True'}),
  178 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_leksemow'", 'blank': 'True'}),
  179 + 'responsible': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'db_column': "'odpowiedzialny'", 'blank': 'True'}),
  180 + 'source': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zrodlo'", 'blank': 'True'}),
  181 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'status'"}),
  182 + 'valence': ('django.db.models.fields.TextField', [], {'blank': 'True'})
  183 + },
  184 + u'dictionary.lexemeassociation': {
  185 + 'Meta': {'unique_together': "(['lexeme', 'vocabulary'],)", 'object_name': 'LexemeAssociation', 'db_table': "'leksemy_w_slownikach'"},
  186 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  187 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  188 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  189 + },
  190 + u'dictionary.lexemeattribute': {
  191 + 'Meta': {'object_name': 'LexemeAttribute'},
  192 + 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  193 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  194 + 'inflection_characteristics': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'symmetrical': 'False', 'blank': 'True'}),
  195 + 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  196 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
  197 + 'parts_of_speech': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.PartOfSpeech']", 'symmetrical': 'False'}),
  198 + 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  199 + 'takes_ic': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
  200 + },
  201 + u'dictionary.lexemeattributevalue': {
  202 + 'Meta': {'ordering': "['value']", 'object_name': 'LexemeAttributeValue'},
  203 + 'attribute': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'to': u"orm['dictionary.LexemeAttribute']"}),
  204 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  205 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'lavs'", 'blank': 'True', 'to': u"orm['dictionary.Lexeme']"}),
  206 + 'new_lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeAV']", 'blank': 'True'}),
  207 + 'value': ('django.db.models.fields.CharField', [], {'max_length': '32'})
  208 + },
  209 + u'dictionary.lexemeav': {
  210 + 'Meta': {'unique_together': "(['lexeme', 'attribute_value'],)", 'object_name': 'LexemeAV'},
  211 + 'attribute_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexemeAttributeValue']"}),
  212 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  213 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  214 + },
  215 + u'dictionary.lexemecv': {
  216 + 'Meta': {'unique_together': "(['lexeme', 'classification_value'],)", 'object_name': 'LexemeCV'},
  217 + 'classification_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.ClassificationValue']"}),
  218 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  219 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  220 + },
  221 + u'dictionary.lexemeform': {
  222 + 'Meta': {'object_name': 'LexemeForm'},
  223 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'}),
  224 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  225 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  226 + },
  227 + u'dictionary.lexemeinflectionpattern': {
  228 + 'Meta': {'ordering': "['index']", 'unique_together': "(('lexeme', 'index'),)", 'object_name': 'LexemeInflectionPattern', 'db_table': "'odmieniasie'"},
  229 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  230 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'oind'"}),
  231 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  232 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  233 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'db_column': "'w_id'"}),
  234 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_odmieniasiow'", 'blank': 'True'}),
  235 + 'root': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'rdzen'"})
  236 + },
  237 + u'dictionary.lexicalclass': {
  238 + 'Meta': {'object_name': 'LexicalClass', 'db_table': "'czescimowy'"},
  239 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'czm'"})
  240 + },
  241 + u'dictionary.paradygmatywsjp': {
  242 + 'Meta': {'object_name': 'ParadygmatyWSJP', 'db_table': "'paradygmatywsjp'"},
  243 + 'charfl': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  244 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  245 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  246 + 'efobaz': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  247 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  248 + 'kskl': ('django.db.models.fields.IntegerField', [], {}),
  249 + 'morf': ('django.db.models.fields.TextField', [], {}),
  250 + 'podparad': ('django.db.models.fields.CharField', [], {'max_length': '4', 'blank': 'True'}),
  251 + 'pref': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  252 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  253 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  254 + 'suf': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  255 + 'typr': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typr'"}),
  256 + 'wariant': ('django.db.models.fields.CharField', [], {'max_length': '4'})
  257 + },
  258 + u'dictionary.partofspeech': {
  259 + 'Meta': {'ordering': "['symbol']", 'object_name': 'PartOfSpeech', 'db_table': "'klasygramatyczne'"},
  260 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  261 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'pos'"})
  262 + },
  263 + u'dictionary.pattern': {
  264 + 'Meta': {'ordering': "['name']", 'object_name': 'Pattern', 'db_table': "'wzory'"},
  265 + 'basic_form_ending': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zakp'", 'blank': 'True'}),
  266 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  267 + 'example': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'przyklad'"}),
  268 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  269 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '32', 'db_column': "'w_id'"}),
  270 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8'}),
  271 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typ'"})
  272 + },
  273 + u'dictionary.patterntype': {
  274 + 'Meta': {'object_name': 'PatternType', 'db_table': "'typywzorow'"},
  275 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  276 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  277 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'wtyp'", 'blank': 'True'})
  278 + },
  279 + u'dictionary.qualifier': {
  280 + 'Meta': {'ordering': "['label']", 'unique_together': "(('label', 'vocabulary'),)", 'object_name': 'Qualifier', 'db_table': "'kwalifikatory'"},
  281 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  282 + 'exclusion_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.QualifierExclusionClass']", 'null': 'True', 'db_column': "'klasa'", 'blank': 'True'}),
  283 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  284 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'kwal'"}),
  285 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'qualifiers'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"})
  286 + },
  287 + u'dictionary.qualifierexclusionclass': {
  288 + 'Meta': {'object_name': 'QualifierExclusionClass', 'db_table': "'klasy_wykluczania'"},
  289 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  290 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  291 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  292 + },
  293 + u'dictionary.savedexportdata': {
  294 + 'Meta': {'object_name': 'SavedExportData'},
  295 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  296 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64'}),
  297 + 'serialized_data': ('django.db.models.fields.TextField', [], {})
  298 + },
  299 + u'dictionary.savedfilter': {
  300 + 'Meta': {'unique_together': "(('name', 'user'),)", 'object_name': 'SavedFilter'},
  301 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  302 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '64'}),
  303 + 'serialized_filter': ('django.db.models.fields.TextField', [], {}),
  304 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']"})
  305 + },
  306 + u'dictionary.tablecell': {
  307 + 'Meta': {'object_name': 'TableCell', 'db_table': "'komorki_tabel'"},
  308 + 'cell': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['dictionary.Cell']", 'unique': 'True', 'db_column': "'k_id'"}),
  309 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  310 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  311 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  312 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  313 + 'rowspan': ('django.db.models.fields.IntegerField', [], {})
  314 + },
  315 + u'dictionary.tableheader': {
  316 + 'Meta': {'object_name': 'TableHeader', 'db_table': "'naglowki_tabel'"},
  317 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  318 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  319 + 'css_class': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'styl'"}),
  320 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  321 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'nagl'", 'blank': 'True'}),
  322 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  323 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  324 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"})
  325 + },
  326 + u'dictionary.tabletemplate': {
  327 + 'Meta': {'object_name': 'TableTemplate', 'db_table': "'szablony_tabel'"},
  328 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  329 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  330 + 'pattern_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'wtyp'"}),
  331 + 'variant': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Variant']", 'db_column': "'wariant'"})
  332 + },
  333 + u'dictionary.variant': {
  334 + 'Meta': {'object_name': 'Variant', 'db_table': "'warianty'"},
  335 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '32', 'primary_key': 'True', 'db_column': "'wariant'"})
  336 + },
  337 + u'dictionary.vocabulary': {
  338 + 'Meta': {'object_name': 'Vocabulary', 'db_table': "'slowniki'"},
  339 + 'classifications': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'to': u"orm['dictionary.Classification']"}),
  340 + 'editors': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'editable_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  341 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '64', 'primary_key': 'True', 'db_column': "'slownik'"}),
  342 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'through': u"orm['dictionary.LexemeAssociation']", 'to': u"orm['dictionary.Lexeme']"}),
  343 + 'managers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'managed_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  344 + 'viewers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'visible_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"})
  345 + }
  346 + }
  347 +
  348 + complete_apps = ['dictionary']
0 349 \ No newline at end of file
... ...
dictionary/migrations/0027_lexemeav.py 0 → 100644
  1 +# -*- coding: utf-8 -*-
  2 +import datetime
  3 +from south.db import db
  4 +from south.v2 import DataMigration
  5 +from django.db import models
  6 +
  7 +class Migration(DataMigration):
  8 +
  9 + def forwards(self, orm):
  10 + for av in orm.LexemeAttributeValue.objects.all():
  11 + for lexeme in av.lexemes.all():
  12 + orm.LexemeAV.objects.get_or_create(
  13 + lexeme=lexeme, attribute_value=av)
  14 +
  15 + def backwards(self, orm):
  16 + for av in orm.LexemeAttributeValue.objects.all():
  17 + for lexeme in av.new_lexemes.all():
  18 + av.lexemes.add(lexeme)
  19 +
  20 + models = {
  21 + u'auth.group': {
  22 + 'Meta': {'object_name': 'Group'},
  23 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  24 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
  25 + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
  26 + },
  27 + u'auth.permission': {
  28 + 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
  29 + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  30 + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
  31 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  32 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
  33 + },
  34 + u'auth.user': {
  35 + 'Meta': {'object_name': 'User'},
  36 + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  37 + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
  38 + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  39 + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
  40 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  41 + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
  42 + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  43 + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  44 + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  45 + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  46 + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
  47 + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
  48 + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
  49 + },
  50 + u'contenttypes.contenttype': {
  51 + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
  52 + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  53 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  54 + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  55 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
  56 + },
  57 + u'dictionary.baseformlabel': {
  58 + 'Meta': {'object_name': 'BaseFormLabel', 'db_table': "'efobazy'"},
  59 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  60 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'efobaz'", 'blank': 'True'})
  61 + },
  62 + u'dictionary.cell': {
  63 + 'Meta': {'ordering': "['index']", 'object_name': 'Cell', 'db_table': "'klatki'"},
  64 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  65 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  66 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kind'"}),
  67 + 'prefix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'prefiks'", 'blank': 'True'}),
  68 + 'suffix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'sufiks'", 'blank': 'True'}),
  69 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"}),
  70 + 'tag': ('django.db.models.fields.TextField', [], {'db_column': "'tag'", 'blank': 'True'})
  71 + },
  72 + u'dictionary.classification': {
  73 + 'Meta': {'object_name': 'Classification', 'db_table': "'klasyfikacje'"},
  74 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  75 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"})
  76 + },
  77 + u'dictionary.classificationvalue': {
  78 + 'Meta': {'object_name': 'ClassificationValue', 'db_table': "'wartosci_klasyfikacji'"},
  79 + 'classification': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'db_column': "'klas_id'", 'to': u"orm['dictionary.Classification']"}),
  80 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usunieta'"}),
  81 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  82 + 'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  83 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeCV']", 'blank': 'True'}),
  84 + 'parent_node': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'child_nodes'", 'null': 'True', 'db_column': "'rodzic'", 'to': u"orm['dictionary.ClassificationValue']"})
  85 + },
  86 + u'dictionary.crossreference': {
  87 + 'Meta': {'object_name': 'CrossReference', 'db_table': "'odsylacze'"},
  88 + 'from_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_to'", 'db_column': "'l_id_od'", 'to': u"orm['dictionary.Lexeme']"}),
  89 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  90 + 'to_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_from'", 'db_column': "'l_id_do'", 'to': u"orm['dictionary.Lexeme']"}),
  91 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.CrossReferenceType']", 'db_column': "'typods_id'"})
  92 + },
  93 + u'dictionary.crossreferencetype': {
  94 + 'Meta': {'object_name': 'CrossReferenceType', 'db_table': "'typyodsylaczy'"},
  95 + 'desc': ('django.db.models.fields.CharField', [], {'max_length': '40', 'db_column': "'naglowek'"}),
  96 + 'from_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_to'", 'db_column': "'pos1'", 'to': u"orm['dictionary.PartOfSpeech']"}),
  97 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  98 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kolejnosc'"}),
  99 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_column': "'typods'"}),
  100 + 'to_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_from'", 'db_column': "'pos2'", 'to': u"orm['dictionary.PartOfSpeech']"})
  101 + },
  102 + u'dictionary.ending': {
  103 + 'Meta': {'ordering': "['index']", 'unique_together': "(('pattern', 'base_form_label', 'index'),)", 'object_name': 'Ending', 'db_table': "'zakonczenia'"},
  104 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  105 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  106 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'zind'"}),
  107 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'endings'", 'db_column': "'w_id'", 'to': u"orm['dictionary.Pattern']"}),
  108 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_zakonczen'", 'blank': 'True'}),
  109 + 'string': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'zak'", 'blank': 'True'})
  110 + },
  111 + u'dictionary.history': {
  112 + 'Meta': {'object_name': 'History', 'db_table': "'history'"},
  113 + 'column_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'column_name_'", 'blank': 'True'}),
  114 + 'column_ord': ('django.db.models.fields.IntegerField', [], {'db_column': "'ordinal_position_of_column_'"}),
  115 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  116 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'null': 'True', 'db_column': "'lexeme_id_'", 'blank': 'True'}),
  117 + 'new_value': ('django.db.models.fields.TextField', [], {'db_column': "'new_value_'", 'blank': 'True'}),
  118 + 'old_value': ('django.db.models.fields.TextField', [], {'db_column': "'old_value_'", 'blank': 'True'}),
  119 + 'operation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'operation_'"}),
  120 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'null': 'True', 'db_column': "'pattern_id_'", 'blank': 'True'}),
  121 + 'row_id': ('django.db.models.fields.IntegerField', [], {'db_column': "'id_'"}),
  122 + 'table_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'table_name_'"}),
  123 + 'table_oid': ('django.db.models.fields.IntegerField', [], {'db_column': "'table_oid_'"}),
  124 + 'timestamp': ('django.db.models.fields.DateTimeField', [], {'db_column': "'timestamp_'"}),
  125 + 'transaction_began': ('django.db.models.fields.DateTimeField', [], {'db_column': "'transaction_began_'"}),
  126 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'db_column': "'user_id_'"})
  127 + },
  128 + u'dictionary.inflectioncharacteristic': {
  129 + 'Meta': {'unique_together': "(('symbol', 'part_of_speech'),)", 'object_name': 'InflectionCharacteristic', 'db_table': "'charfle'"},
  130 + 'basic_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  131 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  132 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  133 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'charfl'", 'blank': 'True'})
  134 + },
  135 + u'dictionary.inputform': {
  136 + 'Meta': {'object_name': 'InputForm'},
  137 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  138 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  139 + 'input_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InputLexeme']"})
  140 + },
  141 + u'dictionary.inputlexeme': {
  142 + 'Meta': {'object_name': 'InputLexeme'},
  143 + 'entry': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  144 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
  145 + },
  146 + u'dictionary.lexeme': {
  147 + 'Meta': {'object_name': 'Lexeme', 'db_table': "'leksemy'"},
  148 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  149 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  150 + 'entry': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '64', 'db_column': "'haslo'", 'blank': 'True'}),
  151 + 'entry_suffix': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'haslosuf'", 'blank': 'True'}),
  152 + 'gloss': ('django.db.models.fields.TextField', [], {'db_column': "'glosa'", 'blank': 'True'}),
  153 + 'homonym_number': ('django.db.models.fields.IntegerField', [], {'default': '1', 'db_column': "'hom'"}),
  154 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  155 + 'last_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_column': "'data_modyfikacji'", 'blank': 'True'}),
  156 + 'note': ('django.db.models.fields.TextField', [], {'db_column': "'nota'", 'blank': 'True'}),
  157 + 'owner_vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owned_lexemes'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"}),
  158 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  159 + 'patterns': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Pattern']", 'through': u"orm['dictionary.LexemeInflectionPattern']", 'symmetrical': 'False'}),
  160 + 'pronunciation': ('django.db.models.fields.TextField', [], {'db_column': "'wymowa'", 'blank': 'True'}),
  161 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_leksemow'", 'blank': 'True'}),
  162 + 'responsible': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'db_column': "'odpowiedzialny'", 'blank': 'True'}),
  163 + 'source': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zrodlo'", 'blank': 'True'}),
  164 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'status'"}),
  165 + 'valence': ('django.db.models.fields.TextField', [], {'blank': 'True'})
  166 + },
  167 + u'dictionary.lexemeassociation': {
  168 + 'Meta': {'unique_together': "(['lexeme', 'vocabulary'],)", 'object_name': 'LexemeAssociation', 'db_table': "'leksemy_w_slownikach'"},
  169 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  170 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  171 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  172 + },
  173 + u'dictionary.lexemeattribute': {
  174 + 'Meta': {'object_name': 'LexemeAttribute'},
  175 + 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  176 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  177 + 'inflection_characteristics': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'symmetrical': 'False', 'blank': 'True'}),
  178 + 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  179 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
  180 + 'parts_of_speech': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.PartOfSpeech']", 'symmetrical': 'False'}),
  181 + 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  182 + 'takes_ic': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
  183 + },
  184 + u'dictionary.lexemeattributevalue': {
  185 + 'Meta': {'ordering': "['value']", 'object_name': 'LexemeAttributeValue'},
  186 + 'attribute': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'to': u"orm['dictionary.LexemeAttribute']"}),
  187 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  188 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'lavs'", 'blank': 'True', 'to': u"orm['dictionary.Lexeme']"}),
  189 + 'new_lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeAV']", 'blank': 'True'}),
  190 + 'value': ('django.db.models.fields.CharField', [], {'max_length': '32'})
  191 + },
  192 + u'dictionary.lexemeav': {
  193 + 'Meta': {'unique_together': "(['lexeme', 'attribute_value'],)", 'object_name': 'LexemeAV'},
  194 + 'attribute_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexemeAttributeValue']"}),
  195 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  196 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  197 + },
  198 + u'dictionary.lexemecv': {
  199 + 'Meta': {'unique_together': "(['lexeme', 'classification_value'],)", 'object_name': 'LexemeCV'},
  200 + 'classification_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.ClassificationValue']"}),
  201 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  202 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  203 + },
  204 + u'dictionary.lexemeform': {
  205 + 'Meta': {'object_name': 'LexemeForm'},
  206 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'}),
  207 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  208 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  209 + },
  210 + u'dictionary.lexemeinflectionpattern': {
  211 + 'Meta': {'ordering': "['index']", 'unique_together': "(('lexeme', 'index'),)", 'object_name': 'LexemeInflectionPattern', 'db_table': "'odmieniasie'"},
  212 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  213 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'oind'"}),
  214 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  215 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  216 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'db_column': "'w_id'"}),
  217 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_odmieniasiow'", 'blank': 'True'}),
  218 + 'root': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'rdzen'"})
  219 + },
  220 + u'dictionary.lexicalclass': {
  221 + 'Meta': {'object_name': 'LexicalClass', 'db_table': "'czescimowy'"},
  222 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'czm'"})
  223 + },
  224 + u'dictionary.paradygmatywsjp': {
  225 + 'Meta': {'object_name': 'ParadygmatyWSJP', 'db_table': "'paradygmatywsjp'"},
  226 + 'charfl': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  227 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  228 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  229 + 'efobaz': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  230 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  231 + 'kskl': ('django.db.models.fields.IntegerField', [], {}),
  232 + 'morf': ('django.db.models.fields.TextField', [], {}),
  233 + 'podparad': ('django.db.models.fields.CharField', [], {'max_length': '4', 'blank': 'True'}),
  234 + 'pref': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  235 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  236 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  237 + 'suf': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  238 + 'typr': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typr'"}),
  239 + 'wariant': ('django.db.models.fields.CharField', [], {'max_length': '4'})
  240 + },
  241 + u'dictionary.partofspeech': {
  242 + 'Meta': {'ordering': "['symbol']", 'object_name': 'PartOfSpeech', 'db_table': "'klasygramatyczne'"},
  243 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  244 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'pos'"})
  245 + },
  246 + u'dictionary.pattern': {
  247 + 'Meta': {'ordering': "['name']", 'object_name': 'Pattern', 'db_table': "'wzory'"},
  248 + 'basic_form_ending': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zakp'", 'blank': 'True'}),
  249 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  250 + 'example': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'przyklad'"}),
  251 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  252 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '32', 'db_column': "'w_id'"}),
  253 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8'}),
  254 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typ'"})
  255 + },
  256 + u'dictionary.patterntype': {
  257 + 'Meta': {'object_name': 'PatternType', 'db_table': "'typywzorow'"},
  258 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  259 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  260 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'wtyp'", 'blank': 'True'})
  261 + },
  262 + u'dictionary.qualifier': {
  263 + 'Meta': {'ordering': "['label']", 'unique_together': "(('label', 'vocabulary'),)", 'object_name': 'Qualifier', 'db_table': "'kwalifikatory'"},
  264 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  265 + 'exclusion_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.QualifierExclusionClass']", 'null': 'True', 'db_column': "'klasa'", 'blank': 'True'}),
  266 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  267 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'kwal'"}),
  268 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'qualifiers'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"})
  269 + },
  270 + u'dictionary.qualifierexclusionclass': {
  271 + 'Meta': {'object_name': 'QualifierExclusionClass', 'db_table': "'klasy_wykluczania'"},
  272 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  273 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  274 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  275 + },
  276 + u'dictionary.savedexportdata': {
  277 + 'Meta': {'object_name': 'SavedExportData'},
  278 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  279 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64'}),
  280 + 'serialized_data': ('django.db.models.fields.TextField', [], {})
  281 + },
  282 + u'dictionary.savedfilter': {
  283 + 'Meta': {'unique_together': "(('name', 'user'),)", 'object_name': 'SavedFilter'},
  284 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  285 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '64'}),
  286 + 'serialized_filter': ('django.db.models.fields.TextField', [], {}),
  287 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']"})
  288 + },
  289 + u'dictionary.tablecell': {
  290 + 'Meta': {'object_name': 'TableCell', 'db_table': "'komorki_tabel'"},
  291 + 'cell': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['dictionary.Cell']", 'unique': 'True', 'db_column': "'k_id'"}),
  292 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  293 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  294 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  295 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  296 + 'rowspan': ('django.db.models.fields.IntegerField', [], {})
  297 + },
  298 + u'dictionary.tableheader': {
  299 + 'Meta': {'object_name': 'TableHeader', 'db_table': "'naglowki_tabel'"},
  300 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  301 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  302 + 'css_class': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'styl'"}),
  303 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  304 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'nagl'", 'blank': 'True'}),
  305 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  306 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  307 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"})
  308 + },
  309 + u'dictionary.tabletemplate': {
  310 + 'Meta': {'object_name': 'TableTemplate', 'db_table': "'szablony_tabel'"},
  311 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  312 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  313 + 'pattern_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'wtyp'"}),
  314 + 'variant': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Variant']", 'db_column': "'wariant'"})
  315 + },
  316 + u'dictionary.variant': {
  317 + 'Meta': {'object_name': 'Variant', 'db_table': "'warianty'"},
  318 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '32', 'primary_key': 'True', 'db_column': "'wariant'"})
  319 + },
  320 + u'dictionary.vocabulary': {
  321 + 'Meta': {'object_name': 'Vocabulary', 'db_table': "'slowniki'"},
  322 + 'classifications': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'to': u"orm['dictionary.Classification']"}),
  323 + 'editors': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'editable_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  324 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '64', 'primary_key': 'True', 'db_column': "'slownik'"}),
  325 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'through': u"orm['dictionary.LexemeAssociation']", 'to': u"orm['dictionary.Lexeme']"}),
  326 + 'managers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'managed_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  327 + 'viewers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'visible_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"})
  328 + }
  329 + }
  330 +
  331 + complete_apps = ['dictionary']
  332 + symmetrical = True
... ...
dictionary/migrations/0028_auto.py 0 → 100644
  1 +# -*- coding: 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 +
  8 +class Migration(SchemaMigration):
  9 +
  10 + def forwards(self, orm):
  11 + # Removing M2M table for field lexemes on 'LexemeAttributeValue'
  12 + db.delete_table('dictionary_lexemeattributevalue_lexemes')
  13 +
  14 +
  15 + def backwards(self, orm):
  16 + # Adding M2M table for field lexemes on 'LexemeAttributeValue'
  17 + db.create_table(u'dictionary_lexemeattributevalue_lexemes', (
  18 + ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)),
  19 + ('lexemeattributevalue', models.ForeignKey(orm[u'dictionary.lexemeattributevalue'], null=False)),
  20 + ('lexeme', models.ForeignKey(orm[u'dictionary.lexeme'], null=False))
  21 + ))
  22 + db.create_unique(u'dictionary_lexemeattributevalue_lexemes', ['lexemeattributevalue_id', 'lexeme_id'])
  23 +
  24 +
  25 + models = {
  26 + u'auth.group': {
  27 + 'Meta': {'object_name': 'Group'},
  28 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  29 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
  30 + 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
  31 + },
  32 + u'auth.permission': {
  33 + 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
  34 + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  35 + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
  36 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  37 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
  38 + },
  39 + u'auth.user': {
  40 + 'Meta': {'object_name': 'User'},
  41 + 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  42 + 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
  43 + 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  44 + 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
  45 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  46 + 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
  47 + 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  48 + 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  49 + 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
  50 + 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
  51 + 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
  52 + 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
  53 + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
  54 + },
  55 + u'contenttypes.contenttype': {
  56 + 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
  57 + 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  58 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  59 + 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
  60 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
  61 + },
  62 + u'dictionary.baseformlabel': {
  63 + 'Meta': {'object_name': 'BaseFormLabel', 'db_table': "'efobazy'"},
  64 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  65 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'efobaz'", 'blank': 'True'})
  66 + },
  67 + u'dictionary.cell': {
  68 + 'Meta': {'ordering': "['index']", 'object_name': 'Cell', 'db_table': "'klatki'"},
  69 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  70 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  71 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kind'"}),
  72 + 'prefix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'prefiks'", 'blank': 'True'}),
  73 + 'suffix': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_column': "'sufiks'", 'blank': 'True'}),
  74 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"}),
  75 + 'tag': ('django.db.models.fields.TextField', [], {'db_column': "'tag'", 'blank': 'True'})
  76 + },
  77 + u'dictionary.classification': {
  78 + 'Meta': {'object_name': 'Classification', 'db_table': "'klasyfikacje'"},
  79 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  80 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"})
  81 + },
  82 + u'dictionary.classificationvalue': {
  83 + 'Meta': {'object_name': 'ClassificationValue', 'db_table': "'wartosci_klasyfikacji'"},
  84 + 'classification': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'db_column': "'klas_id'", 'to': u"orm['dictionary.Classification']"}),
  85 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usunieta'"}),
  86 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  87 + 'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  88 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeCV']", 'blank': 'True'}),
  89 + 'parent_node': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'child_nodes'", 'null': 'True', 'db_column': "'rodzic'", 'to': u"orm['dictionary.ClassificationValue']"})
  90 + },
  91 + u'dictionary.crossreference': {
  92 + 'Meta': {'object_name': 'CrossReference', 'db_table': "'odsylacze'"},
  93 + 'from_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_to'", 'db_column': "'l_id_od'", 'to': u"orm['dictionary.Lexeme']"}),
  94 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  95 + 'to_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'refs_from'", 'db_column': "'l_id_do'", 'to': u"orm['dictionary.Lexeme']"}),
  96 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.CrossReferenceType']", 'db_column': "'typods_id'"})
  97 + },
  98 + u'dictionary.crossreferencetype': {
  99 + 'Meta': {'object_name': 'CrossReferenceType', 'db_table': "'typyodsylaczy'"},
  100 + 'desc': ('django.db.models.fields.CharField', [], {'max_length': '40', 'db_column': "'naglowek'"}),
  101 + 'from_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_to'", 'db_column': "'pos1'", 'to': u"orm['dictionary.PartOfSpeech']"}),
  102 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  103 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'kolejnosc'"}),
  104 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_column': "'typods'"}),
  105 + 'to_pos': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'crtype_from'", 'db_column': "'pos2'", 'to': u"orm['dictionary.PartOfSpeech']"})
  106 + },
  107 + u'dictionary.ending': {
  108 + 'Meta': {'ordering': "['index']", 'unique_together': "(('pattern', 'base_form_label', 'index'),)", 'object_name': 'Ending', 'db_table': "'zakonczenia'"},
  109 + 'base_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  110 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  111 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'zind'"}),
  112 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'endings'", 'db_column': "'w_id'", 'to': u"orm['dictionary.Pattern']"}),
  113 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_zakonczen'", 'blank': 'True'}),
  114 + 'string': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'zak'", 'blank': 'True'})
  115 + },
  116 + u'dictionary.history': {
  117 + 'Meta': {'object_name': 'History', 'db_table': "'history'"},
  118 + 'column_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'column_name_'", 'blank': 'True'}),
  119 + 'column_ord': ('django.db.models.fields.IntegerField', [], {'db_column': "'ordinal_position_of_column_'"}),
  120 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  121 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'null': 'True', 'db_column': "'lexeme_id_'", 'blank': 'True'}),
  122 + 'new_value': ('django.db.models.fields.TextField', [], {'db_column': "'new_value_'", 'blank': 'True'}),
  123 + 'old_value': ('django.db.models.fields.TextField', [], {'db_column': "'old_value_'", 'blank': 'True'}),
  124 + 'operation': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'operation_'"}),
  125 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'null': 'True', 'db_column': "'pattern_id_'", 'blank': 'True'}),
  126 + 'row_id': ('django.db.models.fields.IntegerField', [], {'db_column': "'id_'"}),
  127 + 'table_name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_column': "'table_name_'"}),
  128 + 'table_oid': ('django.db.models.fields.IntegerField', [], {'db_column': "'table_oid_'"}),
  129 + 'timestamp': ('django.db.models.fields.DateTimeField', [], {'db_column': "'timestamp_'"}),
  130 + 'transaction_began': ('django.db.models.fields.DateTimeField', [], {'db_column': "'transaction_began_'"}),
  131 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'db_column': "'user_id_'"})
  132 + },
  133 + u'dictionary.inflectioncharacteristic': {
  134 + 'Meta': {'unique_together': "(('symbol', 'part_of_speech'),)", 'object_name': 'InflectionCharacteristic', 'db_table': "'charfle'"},
  135 + 'basic_form_label': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  136 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  137 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  138 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'charfl'", 'blank': 'True'})
  139 + },
  140 + u'dictionary.inputform': {
  141 + 'Meta': {'object_name': 'InputForm'},
  142 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  143 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  144 + 'input_lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InputLexeme']"})
  145 + },
  146 + u'dictionary.inputlexeme': {
  147 + 'Meta': {'object_name': 'InputLexeme'},
  148 + 'entry': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_index': 'True'}),
  149 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
  150 + },
  151 + u'dictionary.lexeme': {
  152 + 'Meta': {'object_name': 'Lexeme', 'db_table': "'leksemy'"},
  153 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  154 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  155 + 'entry': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '64', 'db_column': "'haslo'", 'blank': 'True'}),
  156 + 'entry_suffix': ('django.db.models.fields.CharField', [], {'max_length': '16', 'db_column': "'haslosuf'", 'blank': 'True'}),
  157 + 'gloss': ('django.db.models.fields.TextField', [], {'db_column': "'glosa'", 'blank': 'True'}),
  158 + 'homonym_number': ('django.db.models.fields.IntegerField', [], {'default': '1', 'db_column': "'hom'"}),
  159 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  160 + 'last_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_column': "'data_modyfikacji'", 'blank': 'True'}),
  161 + 'note': ('django.db.models.fields.TextField', [], {'db_column': "'nota'", 'blank': 'True'}),
  162 + 'owner_vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'owned_lexemes'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"}),
  163 + 'part_of_speech': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PartOfSpeech']", 'db_column': "'pos'"}),
  164 + 'patterns': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Pattern']", 'through': u"orm['dictionary.LexemeInflectionPattern']", 'symmetrical': 'False'}),
  165 + 'pronunciation': ('django.db.models.fields.TextField', [], {'db_column': "'wymowa'", 'blank': 'True'}),
  166 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_leksemow'", 'blank': 'True'}),
  167 + 'responsible': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'db_column': "'odpowiedzialny'", 'blank': 'True'}),
  168 + 'source': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zrodlo'", 'blank': 'True'}),
  169 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'status'"}),
  170 + 'valence': ('django.db.models.fields.TextField', [], {'blank': 'True'})
  171 + },
  172 + u'dictionary.lexemeassociation': {
  173 + 'Meta': {'unique_together': "(['lexeme', 'vocabulary'],)", 'object_name': 'LexemeAssociation', 'db_table': "'leksemy_w_slownikach'"},
  174 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  175 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  176 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  177 + },
  178 + u'dictionary.lexemeattribute': {
  179 + 'Meta': {'object_name': 'LexemeAttribute'},
  180 + 'closed': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  181 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  182 + 'inflection_characteristics': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'symmetrical': 'False', 'blank': 'True'}),
  183 + 'multiple': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  184 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
  185 + 'parts_of_speech': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.PartOfSpeech']", 'symmetrical': 'False'}),
  186 + 'required': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
  187 + 'takes_ic': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
  188 + },
  189 + u'dictionary.lexemeattributevalue': {
  190 + 'Meta': {'ordering': "['value']", 'object_name': 'LexemeAttributeValue'},
  191 + 'attribute': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'values'", 'to': u"orm['dictionary.LexemeAttribute']"}),
  192 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  193 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Lexeme']", 'symmetrical': 'False', 'through': u"orm['dictionary.LexemeAV']", 'blank': 'True'}),
  194 + 'value': ('django.db.models.fields.CharField', [], {'max_length': '32'})
  195 + },
  196 + u'dictionary.lexemeav': {
  197 + 'Meta': {'unique_together': "(['lexeme', 'attribute_value'],)", 'object_name': 'LexemeAV'},
  198 + 'attribute_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexemeAttributeValue']"}),
  199 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  200 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  201 + },
  202 + u'dictionary.lexemecv': {
  203 + 'Meta': {'unique_together': "(['lexeme', 'classification_value'],)", 'object_name': 'LexemeCV'},
  204 + 'classification_value': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.ClassificationValue']"}),
  205 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  206 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  207 + },
  208 + u'dictionary.lexemeform': {
  209 + 'Meta': {'object_name': 'LexemeForm'},
  210 + 'form': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'}),
  211 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  212 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']"})
  213 + },
  214 + u'dictionary.lexemeinflectionpattern': {
  215 + 'Meta': {'ordering': "['index']", 'unique_together': "(('lexeme', 'index'),)", 'object_name': 'LexemeInflectionPattern', 'db_table': "'odmieniasie'"},
  216 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  217 + 'index': ('django.db.models.fields.IntegerField', [], {'db_column': "'oind'"}),
  218 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  219 + 'lexeme': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Lexeme']", 'db_column': "'l_id'"}),
  220 + 'pattern': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Pattern']", 'db_column': "'w_id'"}),
  221 + 'qualifiers': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['dictionary.Qualifier']", 'symmetrical': 'False', 'db_table': "'kwalifikatory_odmieniasiow'", 'blank': 'True'}),
  222 + 'root': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'rdzen'"})
  223 + },
  224 + u'dictionary.lexicalclass': {
  225 + 'Meta': {'object_name': 'LexicalClass', 'db_table': "'czescimowy'"},
  226 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'czm'"})
  227 + },
  228 + u'dictionary.paradygmatywsjp': {
  229 + 'Meta': {'object_name': 'ParadygmatyWSJP', 'db_table': "'paradygmatywsjp'"},
  230 + 'charfl': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  231 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  232 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  233 + 'efobaz': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.BaseFormLabel']", 'db_column': "'efobaz'"}),
  234 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  235 + 'kskl': ('django.db.models.fields.IntegerField', [], {}),
  236 + 'morf': ('django.db.models.fields.TextField', [], {}),
  237 + 'podparad': ('django.db.models.fields.CharField', [], {'max_length': '4', 'blank': 'True'}),
  238 + 'pref': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  239 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  240 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  241 + 'suf': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
  242 + 'typr': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typr'"}),
  243 + 'wariant': ('django.db.models.fields.CharField', [], {'max_length': '4'})
  244 + },
  245 + u'dictionary.partofspeech': {
  246 + 'Meta': {'ordering': "['symbol']", 'object_name': 'PartOfSpeech', 'db_table': "'klasygramatyczne'"},
  247 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  248 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '16', 'primary_key': 'True', 'db_column': "'pos'"})
  249 + },
  250 + u'dictionary.pattern': {
  251 + 'Meta': {'ordering': "['name']", 'object_name': 'Pattern', 'db_table': "'wzory'"},
  252 + 'basic_form_ending': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'zakp'", 'blank': 'True'}),
  253 + 'comment': ('django.db.models.fields.TextField', [], {'db_column': "'komentarz'", 'blank': 'True'}),
  254 + 'example': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'przyklad'"}),
  255 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  256 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '32', 'db_column': "'w_id'"}),
  257 + 'status': ('django.db.models.fields.CharField', [], {'max_length': '8'}),
  258 + 'type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'typ'"})
  259 + },
  260 + u'dictionary.patterntype': {
  261 + 'Meta': {'object_name': 'PatternType', 'db_table': "'typywzorow'"},
  262 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  263 + 'lexical_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.LexicalClass']", 'db_column': "'czm'"}),
  264 + 'symbol': ('django.db.models.fields.CharField', [], {'max_length': '32', 'db_column': "'wtyp'", 'blank': 'True'})
  265 + },
  266 + u'dictionary.qualifier': {
  267 + 'Meta': {'ordering': "['label']", 'unique_together': "(('label', 'vocabulary'),)", 'object_name': 'Qualifier', 'db_table': "'kwalifikatory'"},
  268 + 'deleted': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_column': "'usuniety'"}),
  269 + 'exclusion_class': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.QualifierExclusionClass']", 'null': 'True', 'db_column': "'klasa'", 'blank': 'True'}),
  270 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  271 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'kwal'"}),
  272 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'qualifiers'", 'db_column': "'slownik'", 'to': u"orm['dictionary.Vocabulary']"})
  273 + },
  274 + u'dictionary.qualifierexclusionclass': {
  275 + 'Meta': {'object_name': 'QualifierExclusionClass', 'db_table': "'klasy_wykluczania'"},
  276 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  277 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64', 'db_column': "'nazwa'"}),
  278 + 'vocabulary': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Vocabulary']", 'db_column': "'slownik'"})
  279 + },
  280 + u'dictionary.savedexportdata': {
  281 + 'Meta': {'object_name': 'SavedExportData'},
  282 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  283 + 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '64'}),
  284 + 'serialized_data': ('django.db.models.fields.TextField', [], {})
  285 + },
  286 + u'dictionary.savedfilter': {
  287 + 'Meta': {'unique_together': "(('name', 'user'),)", 'object_name': 'SavedFilter'},
  288 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  289 + 'name': ('django.db.models.fields.CharField', [], {'max_length': '64'}),
  290 + 'serialized_filter': ('django.db.models.fields.TextField', [], {}),
  291 + 'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']"})
  292 + },
  293 + u'dictionary.tablecell': {
  294 + 'Meta': {'object_name': 'TableCell', 'db_table': "'komorki_tabel'"},
  295 + 'cell': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['dictionary.Cell']", 'unique': 'True', 'db_column': "'k_id'"}),
  296 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  297 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  298 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  299 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  300 + 'rowspan': ('django.db.models.fields.IntegerField', [], {})
  301 + },
  302 + u'dictionary.tableheader': {
  303 + 'Meta': {'object_name': 'TableHeader', 'db_table': "'naglowki_tabel'"},
  304 + 'col': ('django.db.models.fields.IntegerField', [], {}),
  305 + 'colspan': ('django.db.models.fields.IntegerField', [], {}),
  306 + 'css_class': ('django.db.models.fields.CharField', [], {'max_length': '8', 'db_column': "'styl'"}),
  307 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  308 + 'label': ('django.db.models.fields.CharField', [], {'max_length': '64', 'db_column': "'nagl'", 'blank': 'True'}),
  309 + 'row': ('django.db.models.fields.IntegerField', [], {}),
  310 + 'rowspan': ('django.db.models.fields.IntegerField', [], {}),
  311 + 'table_template': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.TableTemplate']", 'db_column': "'st_id'"})
  312 + },
  313 + u'dictionary.tabletemplate': {
  314 + 'Meta': {'object_name': 'TableTemplate', 'db_table': "'szablony_tabel'"},
  315 + u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
  316 + 'inflection_characteristic': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.InflectionCharacteristic']", 'db_column': "'charfl'"}),
  317 + 'pattern_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.PatternType']", 'db_column': "'wtyp'"}),
  318 + 'variant': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['dictionary.Variant']", 'db_column': "'wariant'"})
  319 + },
  320 + u'dictionary.variant': {
  321 + 'Meta': {'object_name': 'Variant', 'db_table': "'warianty'"},
  322 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '32', 'primary_key': 'True', 'db_column': "'wariant'"})
  323 + },
  324 + u'dictionary.vocabulary': {
  325 + 'Meta': {'object_name': 'Vocabulary', 'db_table': "'slowniki'"},
  326 + 'classifications': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'to': u"orm['dictionary.Classification']"}),
  327 + 'editors': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'editable_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  328 + 'id': ('django.db.models.fields.CharField', [], {'max_length': '64', 'primary_key': 'True', 'db_column': "'slownik'"}),
  329 + 'lexemes': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'vocabularies'", 'blank': 'True', 'through': u"orm['dictionary.LexemeAssociation']", 'to': u"orm['dictionary.Lexeme']"}),
  330 + 'managers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'managed_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"}),
  331 + 'viewers': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'visible_vocabularies'", 'blank': 'True', 'to': u"orm['auth.User']"})
  332 + }
  333 + }
  334 +
  335 + complete_apps = ['dictionary']
0 336 \ No newline at end of file
... ...
dictionary/models.py
... ... @@ -128,7 +128,7 @@ class ClassificationValue(Model):
128 128 parent_node = ForeignKey(
129 129 'self', db_column='rodzic', null=True, blank=True,
130 130 verbose_name=u'rodzic wartości', related_name='child_nodes')
131   - lexemes = ManyToManyField('Lexeme', blank=True)
  131 + lexemes = ManyToManyField('Lexeme', blank=True, through='LexemeCV')
132 132 deleted = BooleanField(db_column='usunieta', default=False)
133 133  
134 134 objects = NotDeletedManager()
... ... @@ -143,12 +143,25 @@ class ClassificationValue(Model):
143 143 def is_empty(self):
144 144 return not self.lexemes.exists()
145 145  
  146 + def add_lexeme(self, lexeme):
  147 + LexemeCV.objects.get_or_create(lexeme=lexeme, classification_value=self)
  148 +
  149 + def remove_lexeme(self, lexeme):
  150 + LexemeCV.objects.filter(lexeme=lexeme, classification_value=self).delete()
  151 +
146 152 def __unicode__(self):
147 153 return self.label
148 154  
149 155 class Meta:
150 156 db_table = 'wartosci_klasyfikacji'
151 157  
  158 +class LexemeCV(Model):
  159 + lexeme = ForeignKey('Lexeme')
  160 + classification_value = ForeignKey('ClassificationValue')
  161 +
  162 + class Meta:
  163 + unique_together = ['lexeme', 'classification_value']
  164 +
152 165  
153 166 class LexicalClass(Model):
154 167 symbol = CharField(primary_key=True, max_length=16, db_column='czm')
... ... @@ -408,9 +421,9 @@ class Lexeme(Model):
408 421  
409 422 def change_owner(self, new_owner):
410 423 old_owner = self.owner_vocabulary
411   - set_vocabulary(self, new_owner, True)
  424 + new_owner.add_lexeme(self)
412 425 self.owner_vocabulary = new_owner
413   - set_vocabulary(self, old_owner, False)
  426 + old_owner.remove_lexeme(self)
414 427  
415 428 def classification_values(self, classification):
416 429 return self.classificationvalue_set.filter(classification=classification)
... ... @@ -535,7 +548,13 @@ class LexemeAttribute(Model):
535 548 class LexemeAttributeValue(Model):
536 549 value = CharField(max_length=32)
537 550 attribute = ForeignKey(LexemeAttribute, related_name='values')
538   - lexemes = ManyToManyField(Lexeme, blank=True)
  551 + lexemes = ManyToManyField(Lexeme, blank=True, through='LexemeAV')
  552 +
  553 + def add_lexeme(self, lexeme):
  554 + LexemeAV.objects.get_or_create(lexeme=lexeme, attribute_value=self)
  555 +
  556 + def remove_lexeme(self, lexeme):
  557 + LexemeAV.objects.filter(lexeme=lexeme, attribute_value=self).delete()
539 558  
540 559 def __unicode__(self):
541 560 return self.value
... ... @@ -543,6 +562,13 @@ class LexemeAttributeValue(Model):
543 562 class Meta:
544 563 ordering = ['value']
545 564  
  565 +class LexemeAV(Model):
  566 + lexeme = ForeignKey('Lexeme')
  567 + attribute_value = ForeignKey('LexemeAttributeValue')
  568 +
  569 + class Meta:
  570 + unique_together = ['lexeme', 'attribute_value']
  571 +
546 572  
547 573 class LexemeInflectionPattern(Model):
548 574 lexeme = ForeignKey(Lexeme, db_column='l_id')
... ... @@ -759,6 +785,21 @@ class Vocabulary(Model):
759 785 perm = Permission.objects.get(codename='manage_all_vocabularies')
760 786 return self.managers.all().distinct() | users_with_perm(perm)
761 787  
  788 + def add_lexeme(self, lexeme):
  789 + la, created = LexemeAssociation.objects.get_or_create(
  790 + lexeme=lexeme, vocabulary=self)
  791 + return created
  792 +
  793 + def remove_lexeme(self, lexeme):
  794 + assert self != lexeme.owner_vocabulary
  795 + LexemeAssociation.objects.filter(lexeme=lexeme, vocabulary=self).delete()
  796 +
  797 + def set_lexeme(self, lexeme, add):
  798 + if add:
  799 + self.add_lexeme(lexeme)
  800 + else:
  801 + self.remove_lexeme(lexeme)
  802 +
762 803 def __unicode__(self):
763 804 return self.id
764 805  
... ... @@ -784,8 +825,6 @@ def managed_vocabularies(user):
784 825 else:
785 826 return user.managed_vocabularies.all()
786 827  
787   -# kiedyś miało dodatkowe pole, a teraz istnieje tylko dlatego,
788   -# że zapuściło korzenie
789 828 class LexemeAssociation(Model):
790 829 lexeme = ForeignKey(Lexeme, db_column='l_id')
791 830 vocabulary = ForeignKey(Vocabulary, db_column='slownik')
... ... @@ -798,16 +837,7 @@ class LexemeAssociation(Model):
798 837  
799 838 class Meta:
800 839 db_table = 'leksemy_w_slownikach'
801   -
802   -def set_vocabulary(lexeme, vocabulary, add):
803   - if add:
804   - LexemeAssociation.objects.get_or_create(
805   - lexeme=lexeme, vocabulary=vocabulary)
806   - else:
807   - la = lexeme.lexemeassociation_set.filter(vocabulary=vocabulary)
808   - if la:
809   - assert(vocabulary != lexeme.owner_vocabulary)
810   - la.delete()
  840 + unique_together = ['lexeme', 'vocabulary']
811 841  
812 842  
813 843 class CrossReferenceType(Model):
... ...