Replace permalink decorator with url reverse
authorDiane Trout <diane@ghic.org>
Wed, 1 Jun 2016 23:52:32 +0000 (16:52 -0700)
committerDiane Trout <diane@ghic.org>
Fri, 24 Jun 2016 22:55:58 +0000 (15:55 -0700)
experiments/models.py
samples/models.py

index efba13a6edf43272be3a6d774a3b34760647dcf0..1844fe593e99ec43e4e2d8bf20aa803d667a6bb1 100644 (file)
@@ -100,10 +100,9 @@ class Sequencer(models.Model):
             name.append("(%s)" % (str(self.instrument_name),))
         return " ".join(name)
 
-    @models.permalink
     def get_absolute_url(self):
-        return ('experiments.views.sequencer',
-                [self.id])
+        return urlresolvers.reverse('sequencer',
+                                    kwargs={'sequencer_id': self.id})
 
     @staticmethod
     def update_isdefault(sender, instance, **kwargs):
@@ -190,11 +189,9 @@ class FlowCell(models.Model):
         else:
             return "Single"
 
-    @models.permalink
     def get_absolute_url(self):
         flowcell_id, status = parse_flowcell_id(self.flowcell_id)
-        return ('experiments.views.flowcell_detail',
-                [str(flowcell_id)])
+        return urlresolvers.reverse('flowcell_detail', args=[str(flowcell_id)])
 
     def get_raw_data_directory(self):
         """Return location of where the raw data is stored"""
@@ -303,10 +300,9 @@ class Lane(models.Model):
                                  blank=True)
     comment = models.TextField(null=True, blank=True)
 
-    @models.permalink
     def get_absolute_url(self):
-        return ('experiments.views.flowcell_lane_detail',
-                [str(self.id)])
+        return urlresolvers.reverse('flowcell_lane_detail',
+                                    kwargs={'lane_pk': str(self.id)})
 
     def __str__(self):
         return self.flowcell.flowcell_id + ':' + str(self.lane_number)
@@ -449,10 +445,8 @@ class DataFile(models.Model):
         return get_absolute_pathname(self.relative_pathname)
     pathname = property(_get_pathname)
 
-    @models.permalink
     def get_absolute_url(self):
-        return ('experiments.views.read_result_file',
-                (), {'key': self.random_key})
+        return urlresolvers.reverse('read_result_file', (), {'key': self.random_key})
 
 
 def find_file_type_metadata_from_filename(pathname):
index d7fe9c98a1029e12e31e0dedea7ad20c936c8b84..c912f4ade622620d1a1605902c484e13437710aa 100644 (file)
@@ -164,9 +164,8 @@ class Species(models.Model):
         verbose_name_plural = "species"
         ordering = ["scientific_name"]
 
-    @models.permalink
     def get_absolute_url(self):
-        return ('samples.views.species', [str(self.id)])
+        return urlresolvers.reverse('species', kwargs={'species_id': str(self.id)})
 
 
 class Affiliation(models.Model):
@@ -465,9 +464,9 @@ class Library(models.Model):
         return '<a href="%s">S</a>' % (summary_url,)
     public.allow_tags = True
 
-    @models.permalink
     def get_absolute_url(self):
-        return ('samples.views.library_to_flowcells', [str(self.id)])
+        return urlresolvers.reverse('library_to_flowcells',
+                                    kwargs={'lib_id': str(self.id)})
 
     def get_admin_url(self):
         return urlresolvers.reverse('admin:samples_library_change',