Skip to content
Snippets Groups Projects
Commit d7519b44 authored by Hervé  MENAGER's avatar Hervé MENAGER
Browse files

remodel MDDR activity classes through a ManyToMany field

fixes #39
parent 075da751
No related branches found
No related tags found
No related merge requests found
No preview for this file type
# -*- coding: utf-8 -*-
# Generated by Django 1.11.1 on 2017-05-22 15:01
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('ippidb', '0017_auto_20170519_1500'),
]
operations = [
migrations.CreateModel(
name='MDDRActivityClass',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('activity_class', models.CharField(max_length=100, unique=True, verbose_name='Activity Class')),
],
options={
'verbose_name_plural': 'MDDR activity classes',
},
),
migrations.AlterUniqueTogether(
name='mddrcompoundactivityclass',
unique_together=set([]),
),
migrations.RemoveField(
model_name='mddrcompoundactivityclass',
name='mddr_compound',
),
migrations.DeleteModel(
name='MDDRCompoundActivityClass',
),
migrations.AddField(
model_name='mddrcompoundimport',
name='activity_classes',
field=models.ManyToManyField(to='ippidb.MDDRActivityClass'),
),
]
...@@ -243,6 +243,15 @@ class Compound(models.Model): ...@@ -243,6 +243,15 @@ class Compound(models.Model):
mddr_compound = models.ForeignKey('MDDRCompoundImport', blank=True, null=True) mddr_compound = models.ForeignKey('MDDRCompoundImport', blank=True, null=True)
class MDDRActivityClass(models.Model):
activity_class = models.CharField('Activity Class', max_length=100, unique=True)
class Meta:
verbose_name_plural = "MDDR activity classes"
def __str__(self):
return self.activity_class
class MDDRCompoundImport(models.Model): class MDDRCompoundImport(models.Model):
mddr_compound_id = models.IntegerField('MDDR compound ID') mddr_compound_id = models.IntegerField('MDDR compound ID')
mddr_name = models.CharField('MDDR name', max_length=40) mddr_name = models.CharField('MDDR name', max_length=40)
...@@ -250,6 +259,7 @@ class MDDRCompoundImport(models.Model): ...@@ -250,6 +259,7 @@ class MDDRCompoundImport(models.Model):
canonical_smile = models.CharField('Canonical Smile', max_length=500, unique=True, blank=True, null=True) canonical_smile = models.CharField('Canonical Smile', max_length=500, unique=True, blank=True, null=True)
#TODO index this table on canonical_smile #TODO index this table on canonical_smile
db_import_date = models.DecimalField('MDDR release year/month', max_digits=6, decimal_places=0) db_import_date = models.DecimalField('MDDR release year/month', max_digits=6, decimal_places=0)
activity_classes = models.ManyToManyField(MDDRActivityClass)
class Meta: class Meta:
# over multiple releases of the MDDR database, the same compound can evolve in its development phase # over multiple releases of the MDDR database, the same compound can evolve in its development phase
...@@ -257,16 +267,6 @@ class MDDRCompoundImport(models.Model): ...@@ -257,16 +267,6 @@ class MDDRCompoundImport(models.Model):
unique_together = (('mddr_compound_id', 'mddr_name', 'dvpmt_phase'),) unique_together = (('mddr_compound_id', 'mddr_name', 'dvpmt_phase'),)
verbose_name_plural = "MDDR compound imports" verbose_name_plural = "MDDR compound imports"
class MDDRCompoundActivityClass(models.Model):
mddr_compound = models.ForeignKey(MDDRCompoundImport)
activity_class = models.CharField('Activity Class', max_length=100)
class Meta:
unique_together = (('mddr_compound', 'activity_class'),)
verbose_name_plural = "MDDR compound activity classes"
class MDDRSimilarity(models.Model): class MDDRSimilarity(models.Model):
canonical_smile_ippidb = models.CharField('Canonical Smile for IPPIDB compound', max_length=500, unique=True, blank=True, null=True) canonical_smile_ippidb = models.CharField('Canonical Smile for IPPIDB compound', max_length=500, unique=True, blank=True, null=True)
canonical_smile_mddr = models.CharField('Canonical Smile for MDDR Compound', max_length=500, unique=True, blank=True, null=True) canonical_smile_mddr = models.CharField('Canonical Smile for MDDR Compound', max_length=500, unique=True, blank=True, null=True)
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment