Make corporation name unique

This commit is contained in:
Claude Paroz 2013-02-07 09:39:11 +01:00
parent d124449951
commit 9a87fd6c81
2 changed files with 121 additions and 2 deletions

View file

@ -0,0 +1,119 @@
# -*- 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 unique constraint on 'Corporation', fields ['name']
db.create_unique('stages_corporation', ['name'])
def backwards(self, orm):
# Removing unique constraint on 'Corporation', fields ['name']
db.delete_unique('stages_corporation', ['name'])
models = {
'stages.availability': {
'Meta': {'object_name': 'Availability'},
'comment': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
'corporation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Corporation']"}),
'domain': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Domain']"}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'period': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Period']"})
},
'stages.corpcontact': {
'Meta': {'object_name': 'CorpContact'},
'corporation': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Corporation']"}),
'email': ('django.db.models.fields.CharField', [], {'max_length': '40', 'blank': 'True'}),
'first_name': ('django.db.models.fields.CharField', [], {'max_length': '40', 'blank': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'is_main': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'last_name': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
'role': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
'tel': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
'title': ('django.db.models.fields.CharField', [], {'max_length': '40', 'blank': 'True'})
},
'stages.corporation': {
'Meta': {'ordering': "(u'name',)", 'object_name': 'Corporation'},
'archived': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'city': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}),
'pcode': ('django.db.models.fields.CharField', [], {'max_length': '4'}),
'street': ('django.db.models.fields.CharField', [], {'max_length': '100', 'blank': 'True'}),
'tel': ('django.db.models.fields.CharField', [], {'max_length': '20', 'blank': 'True'}),
'typ': ('django.db.models.fields.CharField', [], {'max_length': '40', 'blank': 'True'}),
'web': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'})
},
'stages.domain': {
'Meta': {'ordering': "(u'name',)", 'object_name': 'Domain'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
},
'stages.klass': {
'Meta': {'object_name': 'Klass'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'level': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Level']"}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '10'}),
'section': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Section']"})
},
'stages.level': {
'Meta': {'object_name': 'Level'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '10'})
},
'stages.period': {
'Meta': {'object_name': 'Period'},
'end_date': ('django.db.models.fields.DateField', [], {}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'level': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Level']"}),
'section': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Section']"}),
'start_date': ('django.db.models.fields.DateField', [], {}),
'title': ('django.db.models.fields.CharField', [], {'max_length': '150'})
},
'stages.referent': {
'Meta': {'ordering': "(u'last_name', u'first_name')", 'object_name': 'Referent'},
'abrev': ('django.db.models.fields.CharField', [], {'max_length': '10', 'blank': 'True'}),
'archived': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'first_name': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'last_name': ('django.db.models.fields.CharField', [], {'max_length': '40'})
},
'stages.section': {
'Meta': {'object_name': 'Section'},
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'max_length': '20'})
},
'stages.student': {
'Meta': {'object_name': 'Student'},
'archived': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
'birth_date': ('django.db.models.fields.DateField', [], {}),
'city': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
'ext_id': ('django.db.models.fields.IntegerField', [], {'unique': 'True', 'null': 'True'}),
'first_name': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'klass': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Klass']"}),
'last_name': ('django.db.models.fields.CharField', [], {'max_length': '40'}),
'mobile': ('django.db.models.fields.CharField', [], {'max_length': '40', 'blank': 'True'}),
'pcode': ('django.db.models.fields.CharField', [], {'max_length': '4'}),
'street': ('django.db.models.fields.CharField', [], {'max_length': '150', 'blank': 'True'}),
'tel': ('django.db.models.fields.CharField', [], {'max_length': '40', 'blank': 'True'})
},
'stages.training': {
'Meta': {'object_name': 'Training'},
'availability': ('django.db.models.fields.related.OneToOneField', [], {'to': "orm['stages.Availability']", 'unique': 'True'}),
'comment': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'referent': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Referent']", 'null': 'True', 'blank': 'True'}),
'student': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['stages.Student']"})
}
}
complete_apps = ['stages']

View file

@ -99,7 +99,7 @@ class Referent(models.Model):
class Corporation(models.Model):
name = models.CharField(max_length=100, verbose_name='Nom')
name = models.CharField(max_length=100, verbose_name='Nom', unique=True)
typ = models.CharField(max_length=40, blank=True, verbose_name='Type de structure')
street = models.CharField(max_length=100, blank=True, verbose_name='Rue')
pcode = models.CharField(max_length=4, verbose_name='Code postal')
@ -123,7 +123,7 @@ class CorpContact(models.Model):
title = models.CharField(max_length=40, blank=True, verbose_name='Civilité')
first_name = models.CharField(max_length=40, blank=True, verbose_name='Prénom')
last_name = models.CharField(max_length=40, verbose_name='Nom')
role = models.CharField(max_length=40, verbose_name='Fonction')
role = models.CharField(max_length=40, verbose_name='Fonction', blank=True)
tel = models.CharField(max_length=20, blank=True, verbose_name='Téléphone')
email = models.CharField(max_length=40, blank=True, verbose_name='Courriel')