From 7b3b752db47aaa16e136e245a6e3f350c9566690 Mon Sep 17 00:00:00 2001 From: Stephen Burrows Date: Fri, 24 Jun 2011 15:21:27 -0400 Subject: [PATCH] Added catch to NavigationManager.get_for_node for cases where items do not have a target node. --- philo/contrib/shipherd/models.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) 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) -- 2.20.1