From 737c3545e938c03241836e907f78f273b90be900 Mon Sep 17 00:00:00 2001 From: yomguy Date: Wed, 21 Mar 2012 12:22:45 +0100 Subject: [PATCH] fix, fields, add first migration --- teleforma/migrations/0001_initial.py | 459 +++++++++++++++++++++++++++ teleforma/migrations/__init__.py | 0 teleforma/models.py | 37 ++- 3 files changed, 477 insertions(+), 19 deletions(-) create mode 100644 teleforma/migrations/0001_initial.py create mode 100644 teleforma/migrations/__init__.py diff --git a/teleforma/migrations/0001_initial.py b/teleforma/migrations/0001_initial.py new file mode 100644 index 00000000..8c185797 --- /dev/null +++ b/teleforma/migrations/0001_initial.py @@ -0,0 +1,459 @@ +# -*- 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 'Organization' + db.create_table('teleforma_organization', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('description', self.gf('django.db.models.fields.CharField')(max_length=255, blank=True)), + )) + db.send_create_signal('teleforma', ['Organization']) + + # Adding model 'Department' + db.create_table('teleforma_department', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('description', self.gf('django.db.models.fields.CharField')(max_length=255, blank=True)), + ('organization', self.gf('django.db.models.fields.related.ForeignKey')(related_name='department', to=orm['teleforma.Organization'])), + )) + db.send_create_signal('teleforma', ['Department']) + + # Adding model 'Category' + db.create_table('teleforma_category', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('description', self.gf('django.db.models.fields.CharField')(max_length=255, blank=True)), + )) + db.send_create_signal('teleforma', ['Category']) + + # Adding model 'Course' + db.create_table('teleforma_course', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('public_id', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('department', self.gf('django.db.models.fields.related.ForeignKey')(related_name='course', to=orm['teleforma.Department'])), + ('title', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('description', self.gf('django.db.models.fields.CharField')(max_length=255, blank=True)), + ('category', self.gf('django.db.models.fields.related.ForeignKey')(related_name='course', to=orm['teleforma.Category'])), + )) + db.send_create_signal('teleforma', ['Course']) + + # Adding model 'Professor' + db.create_table('teleforma_professor', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='professor', to=orm['auth.User'])), + )) + db.send_create_signal('teleforma', ['Professor']) + + # Adding M2M table for field courses on 'Professor' + db.create_table('teleforma_professor_courses', ( + ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), + ('professor', models.ForeignKey(orm['teleforma.professor'], null=False)), + ('course', models.ForeignKey(orm['teleforma.course'], null=False)) + )) + db.create_unique('teleforma_professor_courses', ['professor_id', 'course_id']) + + # Adding model 'Conference' + db.create_table('teleforma_conference', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('title', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('description', self.gf('django.db.models.fields.CharField')(max_length=255, blank=True)), + ('professor', self.gf('django.db.models.fields.related.ForeignKey')(related_name='conference', to=orm['teleforma.Professor'])), + ('course', self.gf('django.db.models.fields.related.ForeignKey')(related_name='conference', to=orm['teleforma.Course'])), + ('session', self.gf('django.db.models.fields.CharField')(default='1', max_length=16)), + )) + db.send_create_signal('teleforma', ['Conference']) + + # Adding model 'IEJ' + db.create_table('teleforma_iej', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('name', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('description', self.gf('django.db.models.fields.CharField')(max_length=255, blank=True)), + )) + db.send_create_signal('teleforma', ['IEJ']) + + # Adding model 'Student' + db.create_table('teleforma_student', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('user', self.gf('django.db.models.fields.related.ForeignKey')(related_name='student', to=orm['auth.User'])), + ('category', self.gf('django.db.models.fields.related.ForeignKey')(related_name='student', to=orm['teleforma.Category'])), + ('iej', self.gf('django.db.models.fields.related.ForeignKey')(related_name='student', to=orm['teleforma.IEJ'])), + )) + db.send_create_signal('teleforma', ['Student']) + + # Adding M2M table for field courses on 'Student' + db.create_table('teleforma_student_courses', ( + ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)), + ('student', models.ForeignKey(orm['teleforma.student'], null=False)), + ('course', models.ForeignKey(orm['teleforma.course'], null=False)) + )) + db.create_unique('teleforma_student_courses', ['student_id', 'course_id']) + + # Adding model 'Document' + db.create_table('teleforma_document', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('title', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('description', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('mime_type', self.gf('django.db.models.fields.CharField')(max_length=255, null=True)), + ('credits', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('is_published', self.gf('django.db.models.fields.BooleanField')(default=False)), + ('date_added', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), + ('date_modified', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), + ('code', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('course', self.gf('django.db.models.fields.related.ForeignKey')(related_name='document', to=orm['teleforma.Course'])), + ('file', self.gf('django.db.models.fields.files.FileField')(max_length=100, db_column='filename')), + )) + db.send_create_signal('teleforma', ['Document']) + + # Adding model 'Media' + db.create_table('teleforma_media', ( + ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), + ('title', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('description', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('mime_type', self.gf('django.db.models.fields.CharField')(max_length=255, null=True)), + ('credits', self.gf('django.db.models.fields.CharField')(max_length=255)), + ('is_published', self.gf('django.db.models.fields.BooleanField')(default=False)), + ('date_added', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)), + ('date_modified', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), + ('course', self.gf('django.db.models.fields.related.ForeignKey')(related_name='media', to=orm['teleforma.Course'])), + ('item', self.gf('django.db.models.fields.related.ForeignKey')(related_name='media', to=orm['telemeta.MediaItem'])), + )) + db.send_create_signal('teleforma', ['Media']) + + def backwards(self, orm): + # Deleting model 'Organization' + db.delete_table('teleforma_organization') + + # Deleting model 'Department' + db.delete_table('teleforma_department') + + # Deleting model 'Category' + db.delete_table('teleforma_category') + + # Deleting model 'Course' + db.delete_table('teleforma_course') + + # Deleting model 'Professor' + db.delete_table('teleforma_professor') + + # Removing M2M table for field courses on 'Professor' + db.delete_table('teleforma_professor_courses') + + # Deleting model 'Conference' + db.delete_table('teleforma_conference') + + # Deleting model 'IEJ' + db.delete_table('teleforma_iej') + + # Deleting model 'Student' + db.delete_table('teleforma_student') + + # Removing M2M table for field courses on 'Student' + db.delete_table('teleforma_student_courses') + + # Deleting model 'Document' + db.delete_table('teleforma_document') + + # Deleting model 'Media' + db.delete_table('teleforma_media') + + models = { + 'auth.group': { + 'Meta': {'object_name': 'Group'}, + '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': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}) + }, + 'auth.permission': { + 'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'}, + 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}), + 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}) + }, + 'auth.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': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}), + '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'}), + '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': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}), + 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'}) + }, + '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'}), + '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'}) + }, + 'teleforma.category': { + 'Meta': {'object_name': 'Category'}, + 'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}) + }, + 'teleforma.conference': { + 'Meta': {'object_name': 'Conference'}, + 'course': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'conference'", 'to': "orm['teleforma.Course']"}), + 'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'professor': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'conference'", 'to': "orm['teleforma.Professor']"}), + 'session': ('django.db.models.fields.CharField', [], {'default': "'1'", 'max_length': '16'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'}) + }, + 'teleforma.course': { + 'Meta': {'object_name': 'Course'}, + 'category': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'course'", 'to': "orm['teleforma.Category']"}), + 'department': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'course'", 'to': "orm['teleforma.Department']"}), + 'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'public_id': ('django.db.models.fields.CharField', [], {'max_length': '255'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'}) + }, + 'teleforma.department': { + 'Meta': {'object_name': 'Department'}, + 'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}), + 'organization': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'department'", 'to': "orm['teleforma.Organization']"}) + }, + 'teleforma.document': { + 'Meta': {'object_name': 'Document'}, + 'code': ('django.db.models.fields.CharField', [], {'max_length': '255'}), + 'course': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'document'", 'to': "orm['teleforma.Course']"}), + 'credits': ('django.db.models.fields.CharField', [], {'max_length': '255'}), + 'date_added': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'date_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), + 'description': ('django.db.models.fields.CharField', [], {'max_length': '255'}), + 'file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'db_column': "'filename'"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_published': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'mime_type': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'}) + }, + 'teleforma.iej': { + 'Meta': {'object_name': 'IEJ'}, + 'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}) + }, + 'teleforma.media': { + 'Meta': {'object_name': 'Media'}, + 'course': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['teleforma.Course']"}), + 'credits': ('django.db.models.fields.CharField', [], {'max_length': '255'}), + 'date_added': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'date_modified': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}), + 'description': ('django.db.models.fields.CharField', [], {'max_length': '255'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_published': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'item': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['telemeta.MediaItem']"}), + 'mime_type': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '255'}) + }, + 'teleforma.organization': { + 'Meta': {'object_name': 'Organization'}, + 'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}) + }, + 'teleforma.professor': { + 'Meta': {'object_name': 'Professor'}, + 'courses': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'professor'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['teleforma.Course']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'professor'", 'to': "orm['auth.User']"}) + }, + 'teleforma.student': { + 'Meta': {'object_name': 'Student'}, + 'category': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'student'", 'to': "orm['teleforma.Category']"}), + 'courses': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'student'", 'null': 'True', 'symmetrical': 'False', 'to': "orm['teleforma.Course']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'iej': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'student'", 'to': "orm['teleforma.IEJ']"}), + 'user': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'student'", 'to': "orm['auth.User']"}) + }, + 'telemeta.acquisitionmode': { + 'Meta': {'ordering': "['value']", 'object_name': 'AcquisitionMode', 'db_table': "'acquisition_modes'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.adconversion': { + 'Meta': {'ordering': "['value']", 'object_name': 'AdConversion', 'db_table': "'ad_conversions'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.ethnicgroup': { + 'Meta': {'ordering': "['value']", 'object_name': 'EthnicGroup', 'db_table': "'ethnic_groups'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.genericstyle': { + 'Meta': {'ordering': "['value']", 'object_name': 'GenericStyle', 'db_table': "'generic_styles'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.language': { + 'Meta': {'ordering': "['name']", 'object_name': 'Language', 'db_table': "'languages'"}, + 'comment': ('telemeta.models.core.TextField', [], {'default': "''", 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'identifier': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '3', 'blank': 'True'}), + 'name': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'part1': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '1', 'blank': 'True'}), + 'part2B': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '3', 'blank': 'True'}), + 'part2T': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '3', 'blank': 'True'}), + 'scope': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '1', 'blank': 'True'}), + 'type': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '1', 'blank': 'True'}) + }, + 'telemeta.legalright': { + 'Meta': {'ordering': "['value']", 'object_name': 'LegalRight', 'db_table': "'legal_rights'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.location': { + 'Meta': {'ordering': "['name']", 'object_name': 'Location', 'db_table': "'locations'"}, + 'complete_type': ('telemeta.models.core.ForeignKey', [], {'related_name': "'locations'", 'to': "orm['telemeta.LocationType']"}), + 'current_location': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'past_names'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.Location']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_authoritative': ('telemeta.models.core.BooleanField', [], {'default': 'False'}), + 'latitude': ('telemeta.models.core.FloatField', [], {'default': 'None', 'null': 'True', 'blank': 'True'}), + 'longitude': ('telemeta.models.core.FloatField', [], {'default': 'None', 'null': 'True', 'blank': 'True'}), + 'name': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '150'}), + 'type': ('telemeta.models.core.IntegerField', [], {'default': '0', 'db_index': 'True', 'blank': 'True'}) + }, + 'telemeta.locationtype': { + 'Meta': {'ordering': "['name']", 'object_name': 'LocationType', 'db_table': "'location_types'"}, + 'code': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '64'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('telemeta.models.core.CharField', [], {'max_length': '150'}) + }, + 'telemeta.mediacollection': { + 'Meta': {'ordering': "['code']", 'object_name': 'MediaCollection', 'db_table': "'media_collections'"}, + 'a_informer_07_03': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'acquisition_mode': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.AcquisitionMode']"}), + 'ad_conversion': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.AdConversion']"}), + 'alt_ids': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'alt_title': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'approx_duration': ('telemeta.models.core.DurationField', [], {'default': "'00:00'", 'blank': 'True'}), + 'booklet_author': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'booklet_description': ('telemeta.models.core.TextField', [], {'default': "''", 'blank': 'True'}), + 'cnrs_contributor': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'code': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}), + 'collector': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'collector_is_creator': ('telemeta.models.core.BooleanField', [], {'default': 'False'}), + 'comment': ('telemeta.models.core.TextField', [], {'default': "''", 'blank': 'True'}), + 'conservation_site': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'creator': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'doctype_code': ('telemeta.models.core.IntegerField', [], {'default': '0', 'blank': 'True'}), + 'external_references': ('telemeta.models.core.TextField', [], {'default': "''", 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'is_published': ('telemeta.models.core.BooleanField', [], {'default': 'False'}), + 'items_done': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'legal_rights': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.LegalRight']"}), + 'metadata_author': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.MetadataAuthor']"}), + 'metadata_writer': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.MetadataWriter']"}), + 'old_code': ('telemeta.models.core.CharField', [], {'default': 'None', 'max_length': '250', 'null': 'True', 'blank': 'True'}), + 'physical_format': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.PhysicalFormat']"}), + 'physical_items_num': ('telemeta.models.core.IntegerField', [], {'default': '0', 'blank': 'True'}), + 'public_access': ('telemeta.models.core.CharField', [], {'default': "'metadata'", 'max_length': '16', 'blank': 'True'}), + 'publisher': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.Publisher']"}), + 'publisher_collection': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.PublisherCollection']"}), + 'publisher_serial': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'publishing_status': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.PublishingStatus']"}), + 'recorded_from_year': ('telemeta.models.core.IntegerField', [], {'default': '0', 'blank': 'True'}), + 'recorded_to_year': ('telemeta.models.core.IntegerField', [], {'default': '0', 'blank': 'True'}), + 'recording_context': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'collections'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.RecordingContext']"}), + 'reference': ('telemeta.models.core.CharField', [], {'default': 'None', 'max_length': '250', 'unique': 'True', 'null': 'True', 'blank': 'True'}), + 'state': ('telemeta.models.core.TextField', [], {'default': "''", 'blank': 'True'}), + 'title': ('telemeta.models.core.CharField', [], {'max_length': '250'}), + 'travail': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'year_published': ('telemeta.models.core.IntegerField', [], {'default': '0', 'blank': 'True'}) + }, + 'telemeta.mediaitem': { + 'Meta': {'object_name': 'MediaItem', 'db_table': "'media_items'"}, + 'alt_title': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'approx_duration': ('telemeta.models.core.DurationField', [], {'default': "'00:00'", 'blank': 'True'}), + 'author': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'code': ('telemeta.models.core.CharField', [], {'default': "''", 'unique': 'True', 'max_length': '250', 'blank': 'True'}), + 'collection': ('telemeta.models.core.ForeignKey', [], {'related_name': "'items'", 'to': "orm['telemeta.MediaCollection']"}), + 'collector': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'collector_from_collection': ('telemeta.models.core.BooleanField', [], {'default': 'False'}), + 'collector_selection': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'comment': ('telemeta.models.core.TextField', [], {'default': "''", 'blank': 'True'}), + 'context_comment': ('telemeta.models.core.TextField', [], {'default': "''", 'blank': 'True'}), + 'copied_from_item': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'copies'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.MediaItem']"}), + 'creator_reference': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'cultural_area': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'ethnic_group': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'items'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.EthnicGroup']"}), + 'external_references': ('telemeta.models.core.TextField', [], {'default': "''", 'blank': 'True'}), + 'file': ('telemeta.models.core.FileField', [], {'default': "''", 'max_length': '100', 'db_column': "'filename'", 'blank': 'True'}), + 'generic_style': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'items'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.GenericStyle']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'language': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'language_iso': ('telemeta.models.core.ForeignKey', [], {'default': 'None', 'related_name': "'items'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.Language']"}), + 'location': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'to': "orm['telemeta.Location']", 'null': 'True', 'blank': 'True'}), + 'location_comment': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'moda_execut': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'old_code': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'public_access': ('telemeta.models.core.CharField', [], {'default': "'metadata'", 'max_length': '16', 'blank': 'True'}), + 'recorded_from_date': ('telemeta.models.core.DateField', [], {'default': 'None', 'null': 'True', 'blank': 'True'}), + 'recorded_to_date': ('telemeta.models.core.DateField', [], {'default': 'None', 'null': 'True', 'blank': 'True'}), + 'title': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'track': ('telemeta.models.core.CharField', [], {'default': "''", 'max_length': '250', 'blank': 'True'}), + 'vernacular_style': ('telemeta.models.core.WeakForeignKey', [], {'default': 'None', 'related_name': "'items'", 'null': 'True', 'blank': 'True', 'to': "orm['telemeta.VernacularStyle']"}) + }, + 'telemeta.metadataauthor': { + 'Meta': {'ordering': "['value']", 'object_name': 'MetadataAuthor', 'db_table': "'metadata_authors'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.metadatawriter': { + 'Meta': {'ordering': "['value']", 'object_name': 'MetadataWriter', 'db_table': "'metadata_writers'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.physicalformat': { + 'Meta': {'ordering': "['value']", 'object_name': 'PhysicalFormat', 'db_table': "'physical_formats'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.publisher': { + 'Meta': {'ordering': "['value']", 'object_name': 'Publisher', 'db_table': "'publishers'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.publishercollection': { + 'Meta': {'ordering': "['value']", 'object_name': 'PublisherCollection', 'db_table': "'publisher_collections'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'publisher': ('telemeta.models.core.ForeignKey', [], {'related_name': "'publisher_collections'", 'to': "orm['telemeta.Publisher']"}), + 'value': ('telemeta.models.core.CharField', [], {'max_length': '250'}) + }, + 'telemeta.publishingstatus': { + 'Meta': {'ordering': "['value']", 'object_name': 'PublishingStatus', 'db_table': "'publishing_status'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.recordingcontext': { + 'Meta': {'ordering': "['value']", 'object_name': 'RecordingContext', 'db_table': "'recording_contexts'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + }, + 'telemeta.vernacularstyle': { + 'Meta': {'ordering': "['value']", 'object_name': 'VernacularStyle', 'db_table': "'vernacular_styles'"}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'value': ('telemeta.models.core.CharField', [], {'unique': 'True', 'max_length': '250'}) + } + } + + complete_apps = ['teleforma'] \ No newline at end of file diff --git a/teleforma/migrations/__init__.py b/teleforma/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/teleforma/models.py b/teleforma/models.py index afd6bbed..7bcfc52f 100755 --- a/teleforma/models.py +++ b/teleforma/models.py @@ -47,8 +47,7 @@ from django.forms import ModelForm, TextInput, Textarea from django.utils.translation import ugettext_lazy as _ from django.contrib.auth.models import User from django.core.exceptions import ValidationError -from tools import * -from telemeta.models.media import * +import telemeta.models as telemeta_models from south.modelsinspector import add_introspection_rules @@ -102,7 +101,7 @@ class Course(Model): department = ForeignKey('Department', related_name='course', verbose_name='department') title = CharField(_('title'), max_length=255) description = CharField(_('description'), max_length=255, blank=True) - category = ForeignKey('Category', related_name='student', verbose_name='category') + category = ForeignKey('Category', related_name='course', verbose_name='category') class Meta: db_table = app_label + '_' + 'course' @@ -110,8 +109,8 @@ class Course(Model): class Professor(Model): - user = ForeignKey('User', related_name='professor', verbose_name='user') - courses = ManyToManyField('Course', related_name="student", verbose_name=_('course'), + user = ForeignKey(User, related_name='professor', verbose_name='user') + courses = ManyToManyField('Course', related_name="professor", verbose_name=_('courses'), blank=True, null=True) def __str__(self): @@ -125,8 +124,8 @@ class Conference(Model): title = CharField(_('title'), max_length=255) description = CharField(_('description'), max_length=255, blank=True) - professor = ForeignKey('Professor', related_name='course', verbose_name='professor') - course = ForeignKey('Course', related_name='document', verbose_name='course') + professor = ForeignKey('Professor', related_name='conference', verbose_name='professor') + course = ForeignKey('Course', related_name='conference', verbose_name='course') session = CharField(_('session'), choices=session_choices, max_length=16, default="1") @@ -151,10 +150,10 @@ class IEJ(Model): class Student(Model): - user = ForeignKey('User', related_name='student', verbose_name='user') + user = ForeignKey(User, related_name='student', verbose_name='user') category = ForeignKey('Category', related_name='student', verbose_name='category') iej = ForeignKey('IEJ', related_name='student', verbose_name='iej') - courses = ManyToManyField('Course', related_name="student", verbose_name=_('course'), + courses = ManyToManyField('Course', related_name="student", verbose_name=_('courses'), blank=True, null=True) def __str__(self): @@ -164,13 +163,13 @@ class Student(Model): db_table = app_label + '_' + 'student' -class MediaBaseResource(Model): +class MediaBase(Model): "Describe a media base resource" - title = CharField(_('title'), required=True) - description = CharField(_('description')) - mime_type = CharField(_('mime_type'), null=True) - credits = CharField(_('credits')) + title = CharField(_('title'), max_length=255) + description = CharField(_('description'), max_length=255) + mime_type = CharField(_('mime_type'), max_length=255, null=True) + credits = CharField(_('credits'), max_length=255) is_published = BooleanField(_('published')) date_added = DateTimeField(_('date added'), auto_now_add=True) date_modified = DateTimeField(_('date modified'), auto_now=True) @@ -185,16 +184,16 @@ class MediaBaseResource(Model): def get_fields(self): return self._meta.fields - class Meta(MetaCore): + class Meta: abstract = True ordering = ['code'] -class Document(MediaBaseResource): +class Document(MediaBase): element_type = 'document' - code = CharField(_('code')) + code = CharField(_('code'), max_length=255) course = ForeignKey('Course', related_name='document', verbose_name='course') file = FileField(_('file'), upload_to='items/%Y/%m/%d', db_column="filename") @@ -221,12 +220,12 @@ class Document(MediaBaseResource): db_table = app_label + '_' + 'document' -class Media(MediaBaseResource): +class Media(MediaBase): element_type = 'media' course = ForeignKey('Course', related_name='media', verbose_name='course') - item = ForeignKey('MediaItem', related_name='media', verbose_name='item') + item = ForeignKey(telemeta_models.media.MediaItem, related_name='media', verbose_name='item') class Meta: db_table = app_label + '_' + 'media' -- 2.39.5