@@ -570,6 +570,11 @@ class SamplingFeatures(Base):
570570 FeatureGeometry = Column ('featuregeometry' , Geometry ) # String(50))#
571571 # FeatureGeometryWKT = Column('featuregeometrywkt', String(50))
572572 # FeatureGeometry = Column('featuregeometry', BLOB) # custom geometry queries
573+ __mapper_args__ = {
574+ 'polymorphic_identity' :'samplingfeatures' ,
575+ 'polymorphic_on' : SamplingFeatureTypeCV ,
576+ 'with_polymorphic' :'*'
577+ }
573578
574579 def shape (self ):
575580 """
@@ -750,6 +755,12 @@ class Results(Base):
750755 UnitsObj = relationship (Units )
751756 VariableObj = relationship (Variables )
752757
758+ __mapper_args__ = {
759+ 'polymorphic_on' :ResultTypeCV ,
760+ 'polymorphic_identity' :'results' ,
761+ 'with_polymorphic' :'*'
762+ }
763+
753764 def __repr__ (self ):
754765 return "<Results('%s', '%s', '%s', '%s', '%s')>" % (
755766 self .ResultID , self .ResultUUID , self .ResultTypeCV , self .ProcessingLevelID , self .ValueCount )
@@ -1020,6 +1031,9 @@ class Specimens(SamplingFeatures):
10201031 IsFieldSpecimen = Column ('isfieldspecimen' , Boolean , nullable = False )
10211032
10221033 # SamplingFeatureObj = relationship(SamplingFeatures)
1034+ __mapper_args__ = {
1035+ 'polymorphic_identity' :'Specimen' ,
1036+ }
10231037
10241038
10251039class SpatialOffsets (Base ):
@@ -1056,10 +1070,13 @@ class Sites(SamplingFeatures):
10561070 SpatialReferenceObj = relationship (SpatialReferences )
10571071 # SamplingFeatureObj = relationship(SamplingFeatures)
10581072
1073+ __mapper_args__ = {
1074+ 'polymorphic_identity' :'Site' ,
1075+ }
10591076 def __repr__ (self ):
10601077 return "<Sites('%s', '%s', '%s', '%s', '%s', '%s', '%s')>" \
10611078 % (self .SamplingFeatureID , self .SpatialReferenceID , self .SiteTypeCV , self .Latitude , self .Longitude ,
1062- self .SpatialReferenceObj , self .SamplingFeatureObj )
1079+ self .SpatialReferenceObj , self .SamplingFeatureCode )
10631080
10641081
10651082class RelatedFeatures (Base ):
@@ -1780,6 +1797,8 @@ class PointCoverageResults(Results):
17801797 SpatialReferenceObj = relationship (SpatialReferences )
17811798 ZUnitObj = relationship (Units , primaryjoin = 'PointCoverageResults.ZLocationUnitsID == Units.UnitsID' )
17821799 # ResultObj = relationship(Results, primaryjoin='PointCoverageResults.ResultID == Results.ResultID')
1800+ __mapper_args__ = {'polymorphic_identity' :'Point coverage' }
1801+
17831802
17841803
17851804class ProfileResults (Results ):
@@ -1805,6 +1824,7 @@ class ProfileResults(Results):
18051824 XUnitObj = relationship (Units , primaryjoin = 'ProfileResults.XLocationUnitsID == Units.UnitsID' )
18061825 YUnitObj = relationship (Units , primaryjoin = 'ProfileResults.YLocationUnitsID == Units.UnitsID' )
18071826 # ResultObj = relationship(Results, primaryjoin='ProfileResults.ResultID == Results.ResultID')
1827+ __mapper_args__ = {'polymorphic_identity' :'Profile Coverage' }
18081828
18091829
18101830class CategoricalResults (Results ):
@@ -1823,6 +1843,7 @@ class CategoricalResults(Results):
18231843
18241844 SpatialReferenceObj = relationship (SpatialReferences )
18251845 # ResultObj = relationship(Results, primaryjoin='CategoricalResults.ResultID == Results.ResultID')
1846+ __mapper_args__ = {'polymorphic_identity' :'Category coverage' }
18261847
18271848
18281849class TransectResults (Results ):
@@ -1845,6 +1866,7 @@ class TransectResults(Results):
18451866 SpatialReferenceObj = relationship (SpatialReferences )
18461867 ZUnitObj = relationship (Units , primaryjoin = 'TransectResults.ZLocationUnitsID == Units.UnitsID' )
18471868 # ResultObj = relationship(Results, primaryjoin='TransectResults.ResultID == Results.ResultID')
1869+ __mapper_args__ = {'polymorphic_identity' :'Transect Coverage' }
18481870
18491871
18501872class SpectraResults (Results ):
@@ -1870,6 +1892,7 @@ class SpectraResults(Results):
18701892 YUnitObj = relationship (Units , primaryjoin = 'SpectraResults.YLocationUnitsID == Units.UnitsID' )
18711893 ZUnitObj = relationship (Units , primaryjoin = 'SpectraResults.ZLocationUnitsID == Units.UnitsID' )
18721894 # ResultObj = relationship(Results, primaryjoin='SpectraResults.ResultID == Results.ResultID')
1895+ __mapper_args__ = {'polymorphic_identity' :'Spectra coverage' }
18731896
18741897
18751898class TimeSeriesResults (Results ):
@@ -1897,11 +1920,12 @@ class TimeSeriesResults(Results):
18971920 YLocationUnitsObj = relationship (Units , primaryjoin = 'TimeSeriesResults.YLocationUnitsID == Units.UnitsID' )
18981921 ZLocationUnitsObj = relationship (Units , primaryjoin = 'TimeSeriesResults.ZLocationUnitsID == Units.UnitsID' )
18991922 # ResultObj = relationship(Results, primaryjoin='TimeSeriesResults.ResultID == Results.ResultID')
1923+ __mapper_args__ = {'polymorphic_identity' :'Time series coverage' }
19001924
19011925 def __repr__ (self ):
19021926 return "<TimeSeriesResults('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')>" % \
19031927 (self .ResultID , self .XLocation , self .YLocation , self .XLocation ,
1904- self .ResultObj , self .XLocationUnitsObj , self .SpatialReferenceObj ,
1928+ self .ResultTypeCV , self .XLocationUnitsObj , self .SpatialReferenceObj ,
19051929 self .IntendedTimeSpacing , self .AggregationStatisticCV )
19061930
19071931
@@ -1914,7 +1938,7 @@ class SectionResults(Results):
19141938 YLocationUnitsID = Column ('ylocationunitsid' , ForeignKey (Units .UnitsID ))
19151939 SpatialReferenceID = Column ('spatialreferenceid' , ForeignKey (SpatialReferences .SpatialReferenceID ))
19161940 IntendedXSpacing = Column ('intendedxspacing' , Float (53 ))
1917- IntendedXSpacingUnitsID = Column ('intendedxpacingunitsid ' , ForeignKey (Units .UnitsID ))
1941+ IntendedXSpacingUnitsID = Column ('intendedxspacingunitsid ' , ForeignKey (Units .UnitsID ))
19181942 IntendedZSpacing = Column ('intendedzspacing' , Float (53 ))
19191943 IntendedZSpacingUnitsID = Column ('intendedzspacingunitsid' , ForeignKey (Units .UnitsID ))
19201944 IntendedTimeSpacing = Column ('intendedtimespacing' , Float (53 ))
@@ -1928,6 +1952,7 @@ class SectionResults(Results):
19281952 SpatialReferenceObj = relationship (SpatialReferences )
19291953 YUnitObj = relationship (Units , primaryjoin = 'SectionResults.YLocationUnitsID == Units.UnitsID' )
19301954 # ResultObj = relationship(Results, primaryjoin='SectionResults.ResultID == Results.ResultID')
1955+ __mapper_args__ = {'polymorphic_identity' :'Section coverage' }
19311956
19321957
19331958class TrajectoryResults (Results ):
@@ -1948,6 +1973,7 @@ class TrajectoryResults(Results):
19481973 primaryjoin = 'TrajectoryResults.IntendedTrajectorySpacingUnitsID == Units.UnitsID' )
19491974 SpatialReferenceObj = relationship (SpatialReferences )
19501975 # ResultObj = relationship(Results, primaryjoin='TrajectoryResults.ResultID == Results.ResultID')
1976+ __mapper_args__ = {'polymorphic_identity' :'Trajectory coverage' }
19511977
19521978
19531979class MeasurementResults (Results ):
@@ -1976,6 +2002,7 @@ class MeasurementResults(Results):
19762002 YLocationUnitsObj = relationship (Units , primaryjoin = 'MeasurementResults.YLocationUnitsID == Units.UnitsID' )
19772003 ZLocationUnitsObj = relationship (Units , primaryjoin = 'MeasurementResults.ZLocationUnitsID == Units.UnitsID' )
19782004 # ResultObj = relationship(Results, primaryjoin='MeasurementResults.ResultID == Results.ResultID')
2005+ __mapper_args__ = {'polymorphic_identity' :'Measurement' }
19792006
19802007 def __repr__ (self ):
19812008 return "<MeasResults('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')>" % \
0 commit comments