initial attempt to use django restframework
[htsworkflow.git] / experiments / serializers.py
1 from rest_framework import serializers
2
3 from .models import (
4     ClusterStation,
5     Lane,
6     FlowCell,
7     Sequencer,    
8 )
9
10
11 class ClusterStationSerializer(serializers.HyperlinkedModelSerializer):
12     class Meta:
13         model = ClusterStation
14
15
16 class LaneSerializer(serializers.HyperlinkedModelSerializer):
17     flowcell = serializers.HyperlinkedRelatedField(
18         lookup_field='flowcell_id',
19         view_name='flowcell-detail')
20
21     library = serializers.HyperlinkedRelatedField(
22         view_name='library-detail')
23
24     class Meta:
25         model = Lane
26         fields = (
27             'url',
28             'lane_number',
29             'library',
30             'pM',
31             'cluster_estimate',
32             'status',
33             'comment')
34
35
36 class FlowCellSerializer(serializers.HyperlinkedModelSerializer):
37     url = serializers.HyperlinkedIdentityField(
38         lookup_field='flowcell_id',
39         view_name='flowcell-detail')
40
41     class Meta:
42         model = FlowCell
43         depth = 2
44         fields = (
45             'url',
46             'flowcell_id',
47             'run_date',
48             'paired_end',
49 #            'flowcell_type',
50             'read_length',
51             'control_lane',
52             'cluster_station',
53             'sequencer',
54             'notes',
55             'lane_set',
56         )
57
58 class SequencerSerializer(serializers.HyperlinkedModelSerializer):
59     class Meta:
60         model = Sequencer
61         fields = ('url', 'name', 'instrument_name', 'serial_number', 'model')