1 # -*- coding: utf-8 -*-
2 from south.utils import datetime_utils as datetime
3 from south.db import db
4 from south.v2 import SchemaMigration
5 from django.db import models
8 class Migration(SchemaMigration):
10 def forwards(self, orm):
11 # Adding model 'ClusterStation'
12 db.create_table(u'experiments_clusterstation', (
13 (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
14 ('name', self.gf('django.db.models.fields.CharField')(unique=True, max_length=50)),
15 ('isdefault', self.gf('django.db.models.fields.BooleanField')(default=False)),
17 db.send_create_signal(u'experiments', ['ClusterStation'])
19 # Adding model 'Sequencer'
20 db.create_table(u'experiments_sequencer', (
21 (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
22 ('name', self.gf('django.db.models.fields.CharField')(max_length=50, db_index=True)),
23 ('instrument_name', self.gf('django.db.models.fields.CharField')(max_length=50, db_index=True)),
24 ('serial_number', self.gf('django.db.models.fields.CharField')(max_length=50, db_index=True)),
25 ('model', self.gf('django.db.models.fields.CharField')(max_length=255)),
26 ('active', self.gf('django.db.models.fields.BooleanField')(default=True)),
27 ('isdefault', self.gf('django.db.models.fields.BooleanField')(default=False)),
28 ('comment', self.gf('django.db.models.fields.CharField')(max_length=255)),
30 db.send_create_signal(u'experiments', ['Sequencer'])
32 # Adding model 'FlowCell'
33 db.create_table(u'experiments_flowcell', (
34 (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
35 ('flowcell_id', self.gf('django.db.models.fields.CharField')(unique=True, max_length=20, db_index=True)),
36 ('run_date', self.gf('django.db.models.fields.DateTimeField')()),
37 ('advanced_run', self.gf('django.db.models.fields.BooleanField')(default=False)),
38 ('paired_end', self.gf('django.db.models.fields.BooleanField')(default=False)),
39 ('read_length', self.gf('django.db.models.fields.IntegerField')(default=32)),
40 ('control_lane', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
41 ('cluster_station', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['experiments.ClusterStation'])),
42 ('sequencer', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['experiments.Sequencer'])),
43 ('notes', self.gf('django.db.models.fields.TextField')(blank=True)),
45 db.send_create_signal(u'experiments', ['FlowCell'])
48 db.create_table(u'experiments_lane', (
49 (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
50 ('flowcell', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['experiments.FlowCell'])),
51 ('lane_number', self.gf('django.db.models.fields.IntegerField')()),
52 ('library', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['samples.Library'])),
53 ('pM', self.gf('django.db.models.fields.DecimalField')(default=5, max_digits=5, decimal_places=2)),
54 ('cluster_estimate', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
55 ('status', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
56 ('comment', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
58 db.send_create_signal(u'experiments', ['Lane'])
60 # Adding model 'DataRun'
61 db.create_table(u'experiments_datarun', (
62 (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
63 ('flowcell', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['experiments.FlowCell'])),
64 ('runfolder_name', self.gf('django.db.models.fields.CharField')(max_length=50)),
65 ('result_dir', self.gf('django.db.models.fields.CharField')(max_length=255)),
66 ('last_update_time', self.gf('django.db.models.fields.DateTimeField')()),
67 ('run_start_time', self.gf('django.db.models.fields.DateTimeField')()),
68 ('cycle_start', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
69 ('cycle_stop', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
70 ('run_status', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
71 ('image_software', self.gf('django.db.models.fields.CharField')(max_length=50)),
72 ('image_version', self.gf('django.db.models.fields.CharField')(max_length=50)),
73 ('basecall_software', self.gf('django.db.models.fields.CharField')(max_length=50)),
74 ('basecall_version', self.gf('django.db.models.fields.CharField')(max_length=50)),
75 ('alignment_software', self.gf('django.db.models.fields.CharField')(max_length=50)),
76 ('alignment_version', self.gf('django.db.models.fields.CharField')(max_length=50)),
77 ('comment', self.gf('django.db.models.fields.TextField')(blank=True)),
79 db.send_create_signal(u'experiments', ['DataRun'])
81 # Adding model 'FileType'
82 db.create_table(u'experiments_filetype', (
83 (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
84 ('name', self.gf('django.db.models.fields.CharField')(max_length=50)),
85 ('mimetype', self.gf('django.db.models.fields.CharField')(max_length=50, null=True, blank=True)),
86 ('regex', self.gf('django.db.models.fields.CharField')(max_length=50, null=True, blank=True)),
88 db.send_create_signal(u'experiments', ['FileType'])
90 # Adding model 'DataFile'
91 db.create_table(u'experiments_datafile', (
92 (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
93 ('random_key', self.gf('django.db.models.fields.CharField')(default='9ce3c20e-7fcc-11e3-9794-f0def16fbea3', max_length=64, db_index=True)),
94 ('data_run', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['experiments.DataRun'])),
95 ('library', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['samples.Library'], null=True, blank=True)),
96 ('file_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['experiments.FileType'])),
97 ('relative_pathname', self.gf('django.db.models.fields.CharField')(max_length=255, db_index=True)),
99 db.send_create_signal(u'experiments', ['DataFile'])
102 def backwards(self, orm):
103 # Deleting model 'ClusterStation'
104 db.delete_table(u'experiments_clusterstation')
106 # Deleting model 'Sequencer'
107 db.delete_table(u'experiments_sequencer')
109 # Deleting model 'FlowCell'
110 db.delete_table(u'experiments_flowcell')
112 # Deleting model 'Lane'
113 db.delete_table(u'experiments_lane')
115 # Deleting model 'DataRun'
116 db.delete_table(u'experiments_datarun')
118 # Deleting model 'FileType'
119 db.delete_table(u'experiments_filetype')
121 # Deleting model 'DataFile'
122 db.delete_table(u'experiments_datafile')
127 'Meta': {'object_name': 'Group'},
128 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
129 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
130 'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
132 u'auth.permission': {
133 'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
134 'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
135 'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
136 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
137 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
140 'Meta': {'object_name': 'User'},
141 'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
142 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
143 'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
144 'groups': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Group']"}),
145 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
146 'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
147 'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
148 'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
149 'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
150 'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
151 'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
152 'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Permission']"}),
153 'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
155 u'contenttypes.contenttype': {
156 'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
157 'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
158 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
159 'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
160 'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
162 u'experiments.clusterstation': {
163 'Meta': {'ordering': "['-isdefault', 'name']", 'object_name': 'ClusterStation'},
164 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
165 'isdefault': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
166 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '50'})
168 u'experiments.datafile': {
169 'Meta': {'object_name': 'DataFile'},
170 'data_run': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['experiments.DataRun']"}),
171 'file_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['experiments.FileType']"}),
172 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
173 'library': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['samples.Library']", 'null': 'True', 'blank': 'True'}),
174 'random_key': ('django.db.models.fields.CharField', [], {'default': "'9ce8579c-7fcc-11e3-9794-f0def16fbea3'", 'max_length': '64', 'db_index': 'True'}),
175 'relative_pathname': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'})
177 u'experiments.datarun': {
178 'Meta': {'object_name': 'DataRun'},
179 'alignment_software': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
180 'alignment_version': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
181 'basecall_software': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
182 'basecall_version': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
183 'comment': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
184 'cycle_start': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
185 'cycle_stop': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
186 'flowcell': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['experiments.FlowCell']"}),
187 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
188 'image_software': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
189 'image_version': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
190 'last_update_time': ('django.db.models.fields.DateTimeField', [], {}),
191 'result_dir': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
192 'run_start_time': ('django.db.models.fields.DateTimeField', [], {}),
193 'run_status': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
194 'runfolder_name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
196 u'experiments.filetype': {
197 'Meta': {'object_name': 'FileType'},
198 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
199 'mimetype': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}),
200 'name': ('django.db.models.fields.CharField', [], {'max_length': '50'}),
201 'regex': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'})
203 u'experiments.flowcell': {
204 'Meta': {'ordering': "['-run_date']", 'object_name': 'FlowCell'},
205 'advanced_run': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
206 'cluster_station': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['experiments.ClusterStation']"}),
207 'control_lane': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
208 'flowcell_id': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '20', 'db_index': 'True'}),
209 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
210 'notes': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
211 'paired_end': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
212 'read_length': ('django.db.models.fields.IntegerField', [], {'default': '32'}),
213 'run_date': ('django.db.models.fields.DateTimeField', [], {}),
214 'sequencer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['experiments.Sequencer']"})
216 u'experiments.lane': {
217 'Meta': {'object_name': 'Lane'},
218 'cluster_estimate': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
219 'comment': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
220 'flowcell': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['experiments.FlowCell']"}),
221 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
222 'lane_number': ('django.db.models.fields.IntegerField', [], {}),
223 'library': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['samples.Library']"}),
224 'pM': ('django.db.models.fields.DecimalField', [], {'default': '5', 'max_digits': '5', 'decimal_places': '2'}),
225 'status': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'})
227 u'experiments.sequencer': {
228 'Meta': {'ordering': "['-isdefault', '-active', 'name']", 'object_name': 'Sequencer'},
229 'active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
230 'comment': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
231 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
232 'instrument_name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
233 'isdefault': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
234 'model': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
235 'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
236 'serial_number': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
238 u'samples.affiliation': {
239 'Meta': {'ordering': "['name', 'contact']", 'unique_together': "(('name', 'contact'),)", 'object_name': 'Affiliation'},
240 'contact': ('django.db.models.fields.CharField', [], {'max_length': '256', 'null': 'True', 'blank': 'True'}),
241 'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'null': 'True', 'blank': 'True'}),
242 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
243 'name': ('django.db.models.fields.CharField', [], {'max_length': '256', 'db_index': 'True'}),
244 'users': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': u"orm['samples.HTSUser']", 'null': 'True', 'blank': 'True'})
246 u'samples.antibody': {
247 'Meta': {'ordering': "['antigene']", 'object_name': 'Antibody'},
248 'antibodies': ('django.db.models.fields.CharField', [], {'max_length': '500', 'db_index': 'True'}),
249 'antigene': ('django.db.models.fields.CharField', [], {'max_length': '500', 'db_index': 'True'}),
250 'biology': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
251 'catalog': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}),
252 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
253 'nickname': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
254 'notes': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
255 'source': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '500', 'null': 'True', 'blank': 'True'})
257 u'samples.cellline': {
258 'Meta': {'ordering': "['cellline_name']", 'object_name': 'Cellline'},
259 'cellline_name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100', 'db_index': 'True'}),
260 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
261 'nickname': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
262 'notes': ('django.db.models.fields.TextField', [], {'blank': 'True'})
264 u'samples.condition': {
265 'Meta': {'ordering': "['condition_name']", 'object_name': 'Condition'},
266 'condition_name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '2000', 'db_index': 'True'}),
267 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
268 'nickname': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '20', 'null': 'True', 'blank': 'True'}),
269 'notes': ('django.db.models.fields.TextField', [], {'blank': 'True'})
271 u'samples.experimenttype': {
272 'Meta': {'object_name': 'ExperimentType'},
273 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
274 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '50'})
276 u'samples.htsuser': {
277 'Meta': {'ordering': "['first_name', 'last_name', 'username']", 'object_name': 'HTSUser', '_ormbases': [u'auth.User']},
278 u'user_ptr': ('django.db.models.fields.related.OneToOneField', [], {'to': u"orm['auth.User']", 'unique': 'True', 'primary_key': 'True'})
280 u'samples.library': {
281 'Meta': {'ordering': "['-id']", 'object_name': 'Library'},
282 'account_number': ('django.db.models.fields.CharField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
283 'affiliations': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "'library_affiliations'", 'null': 'True', 'to': u"orm['samples.Affiliation']"}),
284 'amplified_from_sample': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'amplified_into_sample'", 'null': 'True', 'to': u"orm['samples.Library']"}),
285 'antibody': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['samples.Antibody']", 'null': 'True', 'blank': 'True'}),
286 'bioanalyzer_concentration': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '5', 'decimal_places': '2', 'blank': 'True'}),
287 'bioanalyzer_image_url': ('django.db.models.fields.URLField', [], {'default': "''", 'max_length': '200', 'blank': 'True'}),
288 'bioanalyzer_summary': ('django.db.models.fields.TextField', [], {'default': "''", 'blank': 'True'}),
289 'cell_line': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['samples.Cellline']", 'null': 'True', 'blank': 'True'}),
290 'condition': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['samples.Condition']", 'null': 'True', 'blank': 'True'}),
291 'creation_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
292 'experiment_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['samples.ExperimentType']"}),
293 'gel_cut_size': ('django.db.models.fields.IntegerField', [], {'default': '225', 'null': 'True', 'blank': 'True'}),
294 'hidden': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
295 'id': ('django.db.models.fields.CharField', [], {'max_length': '10', 'primary_key': 'True'}),
296 'insert_size': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
297 'library_name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '100'}),
298 'library_species': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['samples.Species']"}),
299 'library_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['samples.LibraryType']", 'null': 'True', 'blank': 'True'}),
300 'made_by': ('django.db.models.fields.CharField', [], {'default': "'Lorian'", 'max_length': '50', 'blank': 'True'}),
301 'made_for': ('django.db.models.fields.CharField', [], {'max_length': '50', 'blank': 'True'}),
302 'multiplex_id': ('django.db.models.fields.CharField', [], {'max_length': '128', 'null': 'True', 'blank': 'True'}),
303 'notes': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
304 'replicate': ('django.db.models.fields.PositiveSmallIntegerField', [], {'null': 'True', 'blank': 'True'}),
305 'stopping_point': ('django.db.models.fields.CharField', [], {'default': "'Done'", 'max_length': '25'}),
306 'successful_pM': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '9', 'decimal_places': '1', 'blank': 'True'}),
307 'tags': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'related_name': "'library_tags'", 'null': 'True', 'symmetrical': 'False', 'to': u"orm['samples.Tag']"}),
308 'ten_nM_dilution': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
309 'undiluted_concentration': ('django.db.models.fields.DecimalField', [], {'null': 'True', 'max_digits': '5', 'decimal_places': '2', 'blank': 'True'})
311 u'samples.librarytype': {
312 'Meta': {'ordering': "['-id']", 'object_name': 'LibraryType'},
313 'can_multiplex': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
314 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
315 'is_paired_end': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
316 'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255'})
318 u'samples.species': {
319 'Meta': {'ordering': "['scientific_name']", 'object_name': 'Species'},
320 'common_name': ('django.db.models.fields.CharField', [], {'max_length': '256', 'blank': 'True'}),
321 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
322 'scientific_name': ('django.db.models.fields.CharField', [], {'max_length': '256', 'db_index': 'True'})
325 'Meta': {'ordering': "['context', 'tag_name']", 'object_name': 'Tag'},
326 'context': ('django.db.models.fields.CharField', [], {'default': "'Library'", 'max_length': '50'}),
327 u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
328 'tag_name': ('django.db.models.fields.CharField', [], {'max_length': '100', 'db_index': 'True'})
332 complete_apps = ['experiments']