From: Stephen Burrows Date: Fri, 24 Jun 2011 19:21:27 +0000 (-0400) Subject: Added catch to NavigationManager.get_for_node for cases where items do not have a... X-Git-Tag: philo-0.9.1^2~7^2^2 X-Git-Url: http://git.ithinksw.org/philo.git/commitdiff_plain/7b3b752db47aaa16e136e245a6e3f350c9566690?ds=sidebyside;hp=b208af1e99ed49867575b4c61e95bf65833dcec5 Added catch to NavigationManager.get_for_node for cases where items do not have a target node. --- diff --git a/philo/contrib/shipherd/models.py b/philo/contrib/shipherd/models.py index 3655e51..95be501 100644 --- a/philo/contrib/shipherd/models.py +++ b/philo/contrib/shipherd/models.py @@ -74,7 +74,8 @@ class NavigationManager(models.Manager): by_pk[root.pk] = root tree_ids.append(getattr(root, item_opts.tree_id_attr)) root._cached_children = [] - root.target_node.get_path(root=site_root_node) + if root.target_node: + root.target_node.get_path(root=site_root_node) root.navigation = nav kwargs = { @@ -89,7 +90,8 @@ class NavigationManager(models.Manager): parent_pk = getattr(item, '%s_id' % item_opts.parent_attr) item.parent = by_pk[parent_pk] item.parent._cached_children.append(item) - item.target_node.get_path(root=site_root_node) + if item.target_node: + item.target_node.get_path(root=site_root_node) cached = roots cache.set(cache_key, cached)