##// END OF EJS Templates
Fixed building post refmaps
neko259 -
r2047:8265883d default
parent child Browse files
Show More
@@ -147,7 +147,7 b' class Post(models.Model, Viewable):'
147 def get_absolute_url(self, thread=None):
147 def get_absolute_url(self, thread=None):
148 # Url is cached only for the "main" thread. When getting url
148 # Url is cached only for the "main" thread. When getting url
149 # for other threads, do it manually.
149 # for other threads, do it manually.
150 return self.url
150 return self.url or self._build_url()
151
151
152 def get_thread(self):
152 def get_thread(self):
153 return self.thread
153 return self.thread
@@ -268,13 +268,14 b' class Post(models.Model, Viewable):'
268 include_last_update)
268 include_last_update)
269
269
270 def _build_url(self):
270 def _build_url(self):
271 opening = self.is_opening()
271 if self.id:
272 opening_id = self.id if opening else self.get_thread().get_opening_post_id()
272 opening = self.is_opening()
273 url = reverse('thread', kwargs={'post_id': opening_id})
273 opening_id = self.id if opening else self.get_thread().get_opening_post_id()
274 if not opening:
274 url = reverse('thread', kwargs={'post_id': opening_id})
275 url += '#' + str(self.id)
275 if not opening:
276 url += '#' + str(self.id)
276
277
277 return url
278 return url
278
279
279 def save(self, force_insert=False, force_update=False, using=None,
280 def save(self, force_insert=False, force_update=False, using=None,
280 update_fields=None):
281 update_fields=None):
@@ -293,7 +294,8 b' class Post(models.Model, Viewable):'
293 super().save(force_insert, force_update, using, update_fields)
294 super().save(force_insert, force_update, using, update_fields)
294
295
295 if new_post:
296 if new_post:
296 self.url = self._build_url()
297 if not self.url:
298 self.url = self._build_url()
297 super().save(update_fields=['url'])
299 super().save(update_fields=['url'])
298
300
299 def get_text(self) -> str:
301 def get_text(self) -> str:
General Comments 0
You need to be logged in to leave comments. Login now