# HG changeset patch # User ymh # Date 1376931421 -7200 # Node ID 5fde1070d9982e23bc4dbc6c0a971ec007bf49b0 # Parent 5a0cec699f70495df91644984c6998ea044611f3 first merge correction diff -r 5a0cec699f70 -r 5fde1070d998 .settings/org.eclipse.core.resources.prefs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.settings/org.eclipse.core.resources.prefs Mon Aug 19 18:57:01 2013 +0200 @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding//src/jocondelab/migrations/0005_auto__add_termlinks__add_dbpediafields.py=utf-8 diff -r 5a0cec699f70 -r 5fde1070d998 src/jocondelab/management/commands/import_dbpedia_translations.py --- a/src/jocondelab/management/commands/import_dbpedia_translations.py Mon Aug 19 18:50:12 2013 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,83 +0,0 @@ -# -*- coding: utf-8 -*- -''' -Created on Aug 08, 2013 - -@author: rvelt -''' - -from core.utils import show_progress -from django.conf import settings -from django.core.management.base import NoArgsCommand -from jocondelab.models import (DbpediaResource, DbpediaTranslation) -from django.db import transaction -import re -from SPARQLWrapper import SPARQLWrapper2 -from optparse import make_option -import traceback -import sys -import urllib -import json - -class Command(NoArgsCommand): - - help = "Import tag translations from dbpedia" - - option_list = NoArgsCommand.option_list + ( - make_option('--all', - action='store_true', - dest='all', - default=False, - help='force all dbpedia uris to be updated, not only those not yet processed' - ), - ) - - def handle_noargs(self, **options): - - endpointre = re.compile('^http:\/\/\w+\.?dbpedia.org') - - qs = DbpediaResource.objects - - if not options.get('all', False): - qs = qs.filter(translations=None) - - count = qs.count() - - qs = qs.extra(select={"notice_count": "SELECT SUM(nb_notice) FROM core_term WHERE core_term.dbpedia_uri = jocondelab_dbpediaresource.uri"}).order_by("-notice_count") - - writer = None - - for i,obj in enumerate(qs): - writer = show_progress(i+1, count, obj.uri, 50, writer) - try: - with transaction.commit_on_success(): - DbpediaTranslation.objects.filter(dbpediaresource=obj).delete() - for langtuple in settings.LANGUAGES: - lang = langtuple[0] - endpointuri = settings.WIKIPEDIA_URLS[obj.lang]['dbpedia_sparql_url'] - endpoint = SPARQLWrapper2(endpointuri) - uri = urllib.unquote(str(obj.uri)).decode('utf8') - sparql = u""" - select ?label, ?rlabel where { - OPTIONAL { <%s> rdfs:label ?label FILTER ( langMatches(?label, "%s") ) } . - OPTIONAL { <%s> dbpedia-owl:wikiPageRedirects ?r }. - OPTIONAL { ?r rdfs:label ?rlabel FILTER ( langMatches(?rlabel, "%s") ) }. - } - """%(uri, lang, uri, lang) - endpoint.setQuery(sparql) - results = endpoint.query() - - if len(results.bindings): - binding = results.bindings[0] - label = binding[u"label"].value if "label" in binding else binding[u"rlabel"].value if "rlabel" in binding else None - if label is not None: - DbpediaTranslation.objects.create( - dbpediaresource = obj, - lang = lang, - label = label - ) - - except Exception as e: - print "\nError processing resource %s : %s" %(obj.uri,unicode(e)) - traceback.print_exception(type(e), e, sys.exc_info()[2]) - - \ No newline at end of file diff -r 5a0cec699f70 -r 5fde1070d998 src/jocondelab/migrations/0004_auto__add_dbpedia_tables.py --- a/src/jocondelab/migrations/0004_auto__add_dbpedia_tables.py Mon Aug 19 18:50:12 2013 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,103 +0,0 @@ -# -*- coding: utf-8 -*- -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import models - - -class Migration(SchemaMigration): - - def forwards(self, orm): - # Adding model 'DbpediaTranslation' - db.create_table(u'jocondelab_dbpediatranslation', ( - (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('dbpediaresource', self.gf('django.db.models.fields.related.ForeignKey')(related_name='translations', to=orm['jocondelab.DbpediaResource'])), - ('lang', self.gf('django.db.models.fields.CharField')(max_length=15, db_index=True)), - ('label', self.gf('django.db.models.fields.CharField')(db_index=True, max_length=2048, blank=True)), - )) - db.send_create_signal(u'jocondelab', ['DbpediaTranslation']) - - # Adding unique constraint on 'DbpediaTranslation', fields ['dbpediaresource', 'lang'] - db.create_unique(u'jocondelab_dbpediatranslation', ['dbpediaresource_id', 'lang']) - - # Adding model 'DbpediaResource' - db.create_table(u'jocondelab_dbpediaresource', ( - (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), - ('uri', self.gf('django.db.models.fields.URLField')(unique=True, max_length=2048, db_index=True)), - ('lang', self.gf('django.db.models.fields.CharField')(max_length=128, db_index=True)), - )) - db.send_create_signal(u'jocondelab', ['DbpediaResource']) - - - def backwards(self, orm): - # Removing unique constraint on 'DbpediaTranslation', fields ['dbpediaresource', 'lang'] - db.delete_unique(u'jocondelab_dbpediatranslation', ['dbpediaresource_id', 'lang']) - - # Deleting model 'DbpediaTranslation' - db.delete_table(u'jocondelab_dbpediatranslation') - - # Deleting model 'DbpediaResource' - db.delete_table(u'jocondelab_dbpediaresource') - - - models = { - u'auth.group': { - 'Meta': {'object_name': 'Group'}, - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - u'auth.permission': { - 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - u'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - u'jocondelab.country': { - 'Meta': {'object_name': 'Country'}, - 'dbpedia_uri': ('django.db.models.fields.URLField', [], {'unique': 'True', 'max_length': '2048', 'db_index': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'iso_code_2': ('django.db.models.fields.CharField', [], {'max_length': '2', 'db_index': 'True'}), - 'iso_code_3': ('django.db.models.fields.CharField', [], {'max_length': '3', 'db_index': 'True'}) - }, - u'jocondelab.dbpediaresource': { - 'Meta': {'object_name': 'DbpediaResource'}, - 'uri': ('django.db.models.fields.URLField', [], {'unique': 'True', 'max_length': '2048', 'db_index': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'lang': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'}) - }, - u'jocondelab.dbpediatranslation': { - 'Meta': {'unique_together': "(('dbpediaresource', 'lang'),)", 'object_name': 'DbpediaTranslation'}, - 'dbpediaresource': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'translations'", 'to': u"orm['jocondelab.DbpediaResource']"}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '2048', 'blank': 'True'}), - 'lang': ('django.db.models.fields.CharField', [], {'max_length': '15', 'db_index': 'True'}) - }, - u'jocondelab.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'language': ('django.db.models.fields.CharField', [], {'default': "'en'", 'max_length': '2'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - } - } - - complete_apps = ['jocondelab'] \ No newline at end of file diff -r 5a0cec699f70 -r 5fde1070d998 src/jocondelab/migrations/0005_populate_dbpedia_table.py --- a/src/jocondelab/migrations/0005_populate_dbpedia_table.py Mon Aug 19 18:50:12 2013 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,111 +0,0 @@ -# -*- coding: utf-8 -*- -import datetime -from south.db import db -from south.v2 import SchemaMigration -from django.db import transaction, reset_queries -from django.conf import settings -from core.models import Term -from core.utils import show_progress - -class Migration(SchemaMigration): - - def forwards(self, orm): - # Filling table 'DbpediaResource' - dbres_from_terms = Term.objects.distinct('dbpedia_uri').exclude(dbpedia_uri=None).order_by('dbpedia_uri').values_list('dbpedia_uri',flat=True) - - total = len(dbres_from_terms) - - transaction.enter_transaction_management(True) - transaction.managed() - - writer = None - for i, dbpedia_uri in enumerate(dbres_from_terms): - - writer = show_progress(i+1, total, "%s" % dbpedia_uri, 50, writer) - - lang = 'fr' - for k in settings.WIKIPEDIA_URLS: - prefix = settings.WIKIPEDIA_URLS[k]['dbpedia_uri']%"" - if dbpedia_uri.find(prefix) == 0: - lang = k - - orm['jocondelab.dbpediaresource'].objects.create( - uri = dbpedia_uri, - lang = lang) - - if not ((i+1) % 5000): - transaction.commit() - reset_queries() - - transaction.commit() - reset_queries() - transaction.leave_transaction_management() - - - def backwards(self, orm): - # Clearing table 'DbpediaResource' - db.clear_table(u'jocondelab_dbpediatranslation') - db.clear_table(u'jocondelab_dbpediaresource') - - - models = { - u'auth.group': { - 'Meta': {'object_name': 'Group'}, - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - u'auth.permission': { - 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - u'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - u'jocondelab.country': { - 'Meta': {'object_name': 'Country'}, - 'dbpedia_uri': ('django.db.models.fields.URLField', [], {'unique': 'True', 'max_length': '2048', 'db_index': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'iso_code_2': ('django.db.models.fields.CharField', [], {'max_length': '2', 'db_index': 'True'}), - 'iso_code_3': ('django.db.models.fields.CharField', [], {'max_length': '3', 'db_index': 'True'}) - }, - u'jocondelab.dbpediaresource': { - 'Meta': {'object_name': 'DbpediaResource'}, - 'uri': ('django.db.models.fields.URLField', [], {'unique': 'True', 'max_length': '2048', 'db_index': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'lang': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'}) - }, - u'jocondelab.dbpediatranslation': { - 'Meta': {'unique_together': "(('dbpediaresource', 'lang'),)", 'object_name': 'DbpediaTranslation'}, - 'dbpediaresource': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'translations'", 'to': u"orm['jocondelab.DbpediaResource']"}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '2048', 'blank': 'True'}), - 'lang': ('django.db.models.fields.CharField', [], {'max_length': '15', 'db_index': 'True'}) - }, - u'jocondelab.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'language': ('django.db.models.fields.CharField', [], {'default': "'en'", 'max_length': '2'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - } - } - - complete_apps = ['jocondelab'] \ No newline at end of file diff -r 5a0cec699f70 -r 5fde1070d998 src/jocondelab/migrations/0006_test.py --- a/src/jocondelab/migrations/0006_test.py Mon Aug 19 18:50:12 2013 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,239 +0,0 @@ -# -*- coding: utf-8 -*- -import datetime -from south.db import db -from south.v2 import DataMigration -from django.db import models - -class Migration(DataMigration): - - def forwards(self, orm): - "Write your forwards methods here." - # Note: Remember to use orm['appname.ModelName'] rather than "from appname.models..." - - def backwards(self, orm): - "Write your backwards methods here." - - models = { - u'auth.group': { - 'Meta': {'object_name': 'Group'}, - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}), - 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) - }, - u'auth.permission': { - 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'}, - 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) - }, - u'contenttypes.contenttype': { - 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"}, - 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}), - 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'}) - }, - 'core.autrnoticeterm': { - 'Meta': {'object_name': 'AutrNoticeTerm', '_ormbases': ['core.NoticeTerm']}, - u'noticeterm_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['core.NoticeTerm']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'core.domnnoticeterm': { - 'Meta': {'object_name': 'DomnNoticeTerm', '_ormbases': ['core.NoticeTerm']}, - u'noticeterm_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['core.NoticeTerm']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'core.ecolnoticeterm': { - 'Meta': {'object_name': 'EcolNoticeTerm', '_ormbases': ['core.NoticeTerm']}, - u'noticeterm_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['core.NoticeTerm']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'core.epoqnoticeterm': { - 'Meta': {'object_name': 'EpoqNoticeTerm', '_ormbases': ['core.NoticeTerm']}, - u'noticeterm_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['core.NoticeTerm']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'core.lieuxnoticeterm': { - 'Meta': {'object_name': 'LieuxNoticeTerm', '_ormbases': ['core.NoticeTerm']}, - u'noticeterm_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['core.NoticeTerm']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'core.notice': { - 'Meta': {'object_name': 'Notice'}, - 'adpt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'appl': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'aptn': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'attr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'autr': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'autr_terms': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'autr+'", 'symmetrical': 'False', 'through': "orm['core.AutrNoticeTerm']", 'to': "orm['core.Term']"}), - 'bibl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'comm': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'contact': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'coor': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'copy': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'dacq': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'data': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'dation': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'ddpt': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'decv': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'deno': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'depo': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'desc': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'desy': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'dims': ('django.db.models.fields.CharField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'dmaj': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'dmis': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), - 'domn': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'domn_terms': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'domn+'", 'symmetrical': 'False', 'through': "orm['core.DomnNoticeTerm']", 'to': "orm['core.Term']"}), - 'drep': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'ecol': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'ecol_terms': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'ecol+'", 'symmetrical': 'False', 'through': "orm['core.EcolNoticeTerm']", 'to': "orm['core.Term']"}), - 'epoq': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'epoq_terms': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'epoq+'", 'symmetrical': 'False', 'through': "orm['core.EpoqNoticeTerm']", 'to': "orm['core.Term']"}), - 'etat': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'expo': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'gene': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'geohi': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'hist': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'image': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'insc': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'inv': ('django.db.models.fields.CharField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'labo': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'lieux': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'lieux_terms': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'lieux+'", 'symmetrical': 'False', 'through': "orm['core.LieuxNoticeTerm']", 'to': "orm['core.Term']"}), - 'loca': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'loca2': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'mill': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'milu': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'mosa': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'msgcom': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'museo': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'nsda': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'onom': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'paut': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'pdat': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'pdec': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'peoc': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'peri': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}), - 'peri_terms': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'peri+'", 'symmetrical': 'False', 'through': "orm['core.PeriNoticeTerm']", 'to': "orm['core.Term']"}), - 'peru': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'phot': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'pins': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'plieux': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'prep': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'puti': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'reda': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'ref': ('django.db.models.fields.CharField', [], {'max_length': '20', 'unique': 'True', 'null': 'True', 'blank': 'True'}), - 'refim': ('django.db.models.fields.CharField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'repr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'repr_terms': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'repr+'", 'symmetrical': 'False', 'through': "orm['core.ReprNoticeTerm']", 'to': "orm['core.Term']"}), - 'srep': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'srep_terms': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'srep+'", 'symmetrical': 'False', 'through': "orm['core.SrepNoticeTerm']", 'to': "orm['core.Term']"}), - 'stat': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'tech': ('django.db.models.fields.CharField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'tico': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'titr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'util': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'video': ('django.db.models.fields.CharField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'www': ('django.db.models.fields.CharField', [], {'max_length': '512', 'null': 'True', 'blank': 'True'}) - }, - 'core.noticeterm': { - 'Meta': {'object_name': 'NoticeTerm'}, - 'graph': ('django.db.models.fields.URLField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'notice': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['core.Notice']"}), - 'term': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['core.Term']"}) - }, - 'core.perinoticeterm': { - 'Meta': {'object_name': 'PeriNoticeTerm', '_ormbases': ['core.NoticeTerm']}, - u'noticeterm_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['core.NoticeTerm']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'core.reprnoticeterm': { - 'Meta': {'object_name': 'ReprNoticeTerm', '_ormbases': ['core.NoticeTerm']}, - u'noticeterm_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['core.NoticeTerm']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'core.srepnoticeterm': { - 'Meta': {'object_name': 'SrepNoticeTerm', '_ormbases': ['core.NoticeTerm']}, - u'noticeterm_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['core.NoticeTerm']", 'unique': 'True', 'primary_key': 'True'}) - }, - 'core.term': { - 'Meta': {'object_name': 'Term'}, - 'alternative_wikipedia_pageid': ('django.db.models.fields.BigIntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'alternative_wikipedia_url': ('django.db.models.fields.URLField', [], {'db_index': 'True', 'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), - 'dbpedia_uri': ('django.db.models.fields.URLField', [], {'db_index': 'True', 'max_length': '2048', 'null': 'True', 'blank': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'db_index': 'True'}), - 'lang': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '128', 'null': 'True', 'blank': 'True'}), - u'level': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}), - u'lft': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}), - 'link_semantic_level': ('django.db.models.fields.IntegerField', [], {'default': 'None', 'null': 'True', 'db_index': 'True', 'blank': 'True'}), - 'nb_notice': ('django.db.models.fields.IntegerField', [], {'default': '0', 'db_index': 'True'}), - 'normalized_label': ('django.db.models.fields.CharField', [], {'max_length': '1024', 'db_index': 'True'}), - 'notices': ('django.db.models.fields.related.ManyToManyField', [], {'related_name': "'terms+'", 'symmetrical': 'False', 'through': "orm['core.NoticeTerm']", 'to': "orm['core.Notice']"}), - 'parent': ('mptt.fields.TreeForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['core.Term']"}), - u'rght': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}), - 'thesaurus': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['core.Thesaurus']"}), - u'tree_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}), - 'uri': ('django.db.models.fields.URLField', [], {'db_index': 'True', 'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'url_status': ('django.db.models.fields.IntegerField', [], {'default': 'None', 'null': 'True', 'db_index': 'True', 'blank': 'True'}), - 'validated': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_index': 'True'}), - 'validation_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), - 'validator': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['core.User']", 'null': 'True', 'blank': 'True'}), - 'wikipedia_edition': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'wikipedia_pageid': ('django.db.models.fields.BigIntegerField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}), - 'wikipedia_revision_id': ('django.db.models.fields.BigIntegerField', [], {'null': 'True', 'blank': 'True'}), - 'wikipedia_url': ('django.db.models.fields.URLField', [], {'db_index': 'True', 'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'wp_alternative_label': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '1024', 'null': 'True', 'blank': 'True'}), - 'wp_label': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '1024', 'null': 'True', 'blank': 'True'}) - }, - 'core.thesaurus': { - 'Meta': {'ordering': "['label']", 'object_name': 'Thesaurus'}, - 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '128', 'db_index': 'True'}), - 'title': ('django.db.models.fields.CharField', [], {'max_length': '1024'}), - 'uri': ('django.db.models.fields.URLField', [], {'db_index': 'True', 'max_length': '2048', 'null': 'True', 'blank': 'True'}) - }, - 'core.user': { - 'Meta': {'object_name': 'User'}, - 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}), - 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), - 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), - 'language': ('django.db.models.fields.CharField', [], {'default': "'fr'", 'max_length': '2'}), - 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}), - 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}), - 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}), - 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), - 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) - }, - 'jocondelab.country': { - 'Meta': {'object_name': 'Country'}, - 'dbpedia_uri': ('django.db.models.fields.URLField', [], {'unique': 'True', 'max_length': '2048', 'db_index': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'iso_code_2': ('django.db.models.fields.CharField', [], {'max_length': '2', 'db_index': 'True'}), - 'iso_code_3': ('django.db.models.fields.CharField', [], {'max_length': '3', 'db_index': 'True'}) - }, - 'jocondelab.dbpediafields': { - 'Meta': {'object_name': 'DbpediaFields'}, - 'abstract': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), - 'dbpedia_uri': ('django.db.models.fields.URLField', [], {'max_length': '2048', 'db_index': 'True'}), - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'label': ('django.db.models.fields.CharField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}), - 'language_code': ('django.db.models.fields.CharField', [], {'max_length': '15', 'db_index': 'True'}), - 'term': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'dbpedia_fields'", 'to': "orm['core.Term']"}), - 'thumbnail': ('django.db.models.fields.URLField', [], {'max_length': '2048', 'null': 'True', 'blank': 'True'}) - }, - 'jocondelab.termlinks': { - 'Meta': {'object_name': 'TermLinks'}, - u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), - 'object': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'termlinks_objects'", 'to': "orm['core.Term']"}), - 'subject': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'termlinks_subjects'", 'to': "orm['core.Term']"}) - } - } - - complete_apps = ['contenttypes', 'jocondelab'] - symmetrical = True diff -r 5a0cec699f70 -r 5fde1070d998 src/jocondelab/models.py --- a/src/jocondelab/models.py Mon Aug 19 18:50:12 2013 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -# -*- coding: utf-8 -*- -''' -Created on Jun 12, 2013 - -@author: ymh -''' -from django.conf import settings -from django.contrib.auth.models import AbstractUser -from django.db import models - -class User(AbstractUser): - language = models.CharField(max_length=2, default=settings.LANGUAGE_CODE[:2]) - -class Country(models.Model): - dbpedia_uri = models.URLField(max_length=2048, unique=True, blank=False, null=False, db_index=True) - iso_code_3 = models.CharField(max_length=3, unique=False, blank=False, null=False, db_index=True) - iso_code_2 = models.CharField(max_length=2, unique=False, blank=False, null=False, db_index=True) - -class DbpediaResource(models.Model): - uri = models.URLField(max_length=2048, unique=True, blank=False, null=False, db_index=True) - lang = models.CharField(max_length=128, unique=False, blank=False, null=False, db_index=True) - -class DbpediaTranslation(models.Model): - dbpediaresource = models.ForeignKey(DbpediaResource, blank=False, null=False, db_index=True, related_name="translations") - lang = models.CharField(max_length=15, unique=False, blank=False, null=False, db_index=True) - label = models.CharField(max_length=2048, unique=False, blank=True, null=False, db_index=True) - - class Meta: - unique_together = ('dbpediaresource', 'lang')