- def get_target_url(self):
- node = self.target_node
- if node is not None and node.accepts_subpath and self.url_or_subpath:
- if self.reversing_parameters is not None:
- view_name = self.url_or_subpath
- params = self.reversing_parameters
- args = isinstance(params, list) and params or None
- kwargs = isinstance(params, dict) and params or None
- subpath = node.view.reverse(view_name, args=args, kwargs=kwargs)
- else:
- subpath = self.url_or_subpath
- if subpath[0] != '/':
- subpath = '/' + subpath
- return node.construct_url(subpath)
- elif node is not None:
- return node.get_absolute_url()
- else:
- return self.url_or_subpath
- target_url = property(get_target_url)
-