From a039c2922650213461ed5165c972cc8f55777dbd Mon Sep 17 00:00:00 2001 From: Diane Trout Date: Wed, 1 Jul 2009 00:35:07 +0000 Subject: [PATCH] Add LibraryType option, (this will probably require a dump/reload) And you'll probably need to do it before updating to this version of the database --- htsworkflow/frontend/samples/admin.py | 8 ++++++-- .../frontend/samples/fixtures/initial_data.json | 16 ++++++++++++++++ htsworkflow/frontend/samples/models.py | 9 ++++++++- 3 files changed, 30 insertions(+), 3 deletions(-) create mode 100644 htsworkflow/frontend/samples/fixtures/initial_data.json diff --git a/htsworkflow/frontend/samples/admin.py b/htsworkflow/frontend/samples/admin.py index 643413f..ee6a9e2 100644 --- a/htsworkflow/frontend/samples/admin.py +++ b/htsworkflow/frontend/samples/admin.py @@ -3,7 +3,7 @@ from django.contrib.admin import widgets from django.db import models from django.utils.translation import ugettext_lazy as _ -from htsworkflow.frontend.samples.models import Antibody, Cellline, Condition, ExperimentType, Species, Affiliation, Library, Tag +from htsworkflow.frontend.samples.models import Antibody, Cellline, Condition, ExperimentType, LibraryType, Species, Affiliation, Library, Tag class Library_Inline(admin.TabularInline): model = Library @@ -22,6 +22,9 @@ class ExperimentTypeOptions(admin.ModelAdmin): #list_display = ('name',) #fieldsets = ( (None, { 'fields': ('name',) }), ) +class LibraryTypeOptions(admin.ModelAdmin): + model = LibraryType + class LibraryOptions(admin.ModelAdmin): date_hierarchy = "creation_date" save_as = True @@ -71,7 +74,7 @@ class LibraryOptions(admin.ModelAdmin): 'fields': ( ('library_id','library_name','hidden'), ('library_species'), - ('experiment_type', 'replicate'), + ('library_type', 'experiment_type', 'replicate'), ('cell_line','condition','antibody'),) }), ('Creation Information:', { @@ -143,6 +146,7 @@ admin.site.register(Antibody, AntibodyOptions) admin.site.register(Cellline, CelllineOptions) admin.site.register(Condition, ConditionOptions) admin.site.register(ExperimentType, ExperimentTypeOptions) +admin.site.register(LibraryType, LibraryTypeOptions) admin.site.register(Library, LibraryOptions) admin.site.register(Species, SpeciesOptions) admin.site.register(Tag, TagOptions) diff --git a/htsworkflow/frontend/samples/fixtures/initial_data.json b/htsworkflow/frontend/samples/fixtures/initial_data.json new file mode 100644 index 0000000..7094141 --- /dev/null +++ b/htsworkflow/frontend/samples/fixtures/initial_data.json @@ -0,0 +1,16 @@ +[ + { + "model": "samples.LibraryType", + "pk": 1, + "fields": { + "name": "Single End" + } + }, + { + "model": "samples.LibraryType", + "pk": 2, + "fields": { + "name": "Paired End" + } + } +] diff --git a/htsworkflow/frontend/samples/models.py b/htsworkflow/frontend/samples/models.py index 7f90f25..5b8f6a7 100644 --- a/htsworkflow/frontend/samples/models.py +++ b/htsworkflow/frontend/samples/models.py @@ -113,6 +113,12 @@ class Affiliation(models.Model): ordering = ["name","contact"] unique_together = (("name", "contact"),) +class LibraryType(models.Model): + name = models.CharField(max_length=255, unique=True) + + def __unicode__(self): + return unicode(self.name) + class Library(models.Model): id = models.AutoField(primary_key=True) library_id = models.CharField(max_length=30, db_index=True, unique=True) @@ -120,7 +126,7 @@ class Library(models.Model): library_species = models.ForeignKey(Species) # new field 2008 Mar 5, alter table samples_library add column "hidden" NOT NULL default 0; hidden = models.BooleanField() - cell_line = models.ForeignKey(Cellline, blank=True, null=True) + cell_line = models.ForeignKey(Cellline, blank=True, null=True, verbose_name="Background") condition = models.ForeignKey(Condition, blank=True, null=True) antibody = models.ForeignKey(Antibody,blank=True,null=True) # New field Aug/25/08. SQL: alter table fctracker_library add column "lib_affiliation" varchar(256) NULL; @@ -132,6 +138,7 @@ class Library(models.Model): REPLICATE_NUM = ((1,1),(2,2),(3,3),(4,4)) replicate = models.PositiveSmallIntegerField(choices=REPLICATE_NUM,default=1) experiment_type = models.ForeignKey(ExperimentType) + library_type = models.ForeignKey(LibraryType, null=True) creation_date = models.DateField(blank=True, null=True) made_for = models.CharField(max_length=50, blank=True, verbose_name='ChIP/DNA/RNA Made By') -- 2.30.2