I don't recall hearing about an issue like this so it is unlikely that upgrading will fix it. In fact very little has changed between GeoNode 1.1RC2 and 1.1 final.
However, there is an administrative command which is intended to help with the situation where the Django application has a record for a layer that is no longer registered with GeoServer. $ geonode cleardeadlayers This should identify all such layers and remove them from the Django database. Hope it helps. -- David Winslow OpenGeo - http://opengeo.org/ On Tue, Feb 14, 2012 at 12:46 PM, Andrew Ross <[email protected]> wrote: > ** > Hello everyone, > > Deleting a layer is creating the error below. > > This is with GeoNode version 1.1 RC2. The layer was removed from both > GeoNetwork and GeoServer, but still showed up under the GeoNode admin. > Tried to delete it a second time from the GeoNode admin and the same error > was generated. > > Has this been fixed in version 1.1 Final? Will upgrading fix it? > > Thanks, Andrew./ > > > ------------------------------------------------------------------------------------------------- > Environment: > > Request Method: POST > Request URL: http://107.22.181.174/admin/maps/layer/ > Django Version: 1.2 > Python Version: 2.7.1 > Installed Applications: > ['django.contrib.auth', > 'django.contrib.contenttypes', > 'django.contrib.sessions', > 'django.contrib.sites', > 'django.contrib.admin', > 'django.contrib.sitemaps', > 'staticfiles', > 'django_extensions', > 'registration', > 'profiles', > 'avatar', > 'geonode.core', > 'geonode.maps', > 'geonode.proxy', > 'geonode', > 'monitor'] > Installed Middleware: > ('django.middleware.common.CommonMiddleware', > 'django.contrib.sessions.middleware.SessionMiddleware', > 'django.middleware.locale.LocaleMiddleware', > 'django.middleware.csrf.CsrfViewMiddleware', > 'django.contrib.auth.middleware.AuthenticationMiddleware') > > > Traceback: > File > "/var/lib/geonode/lib/python2.7/site-packages/django/core/handlers/base.py" > in get_response > 100. response = callback(request, *callback_args, > **callback_kwargs) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/options.py" > in wrapper > 239. return self.admin_site.admin_view(view)(*args, > **kwargs) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/utils/decorators.py" > in _wrapped_view > 76. response = view_func(request, *args, **kwargs) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/views/decorators/cache.py" > in _wrapped_view_func > 69. response = view_func(request, *args, **kwargs) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/sites.py" > in inner > 190. return view(request, *args, **kwargs) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/utils/decorators.py" > in _wrapper > 21. return decorator(bound_func)(*args, **kwargs) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/utils/decorators.py" > in _wrapped_view > 76. response = view_func(request, *args, **kwargs) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/utils/decorators.py" > in bound_func > 17. return func(self, *args2, **kwargs2) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/options.py" > in changelist_view > 1007. response = self.response_action(request, > queryset=cl.get_query_set()) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/options.py" > in response_action > 749. response = func(self, request, queryset) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/actions.py" > in delete_selected > 47. queryset.delete() > File > "/var/lib/geonode/lib/python2.7/site-packages/django/db/models/query.py" in > delete > 445. delete_objects(seen_objs, del_query.db) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/db/models/query.py" in > delete_objects > 1314. signals.pre_delete.send(sender=cls, > instance=instance) > File > "/var/lib/geonode/lib/python2.7/site-packages/django/dispatch/dispatcher.py" > in send > 162. response = receiver(signal=self, sender=sender, **named) > File "/var/lib/geonode/src/GeoNodePy/geonode/maps/models.py" in > delete_layer > 1635. instance.delete_from_geoserver() > File "/var/lib/geonode/src/GeoNodePy/geonode/maps/models.py" in > delete_from_geoserver > 941. cascading_delete(Layer.objects.gs_catalog, self.resource) > File "/var/lib/geonode/src/GeoNodePy/geonode/maps/gs_helpers.py" in > cascading_delete > 132. resource_name = resource.name > > Exception Type: AttributeError at /admin/maps/layer/ > Exception Value: 'NoneType' object has no attribute 'name' > >
