Deleting shapefiles
The final piece of functionality we'll need to implement is the "Delete Shapefile" view. This will let the user delete an entire uploaded shapefile. The process is basically the same as for deleting features: we've already got a Delete hyperlink on the main page, so all we have to do is implement the underlying view.
Go to the top-level urls.py
module and add the following entry to the URL pattern list:
url(r'^delete/(?P<shapefile_id>\d+)$', shapeEditor.shapefiles.views.delete_shapefile),
Then, edit the shapefiles.views
module and add the following new view function:
def delete_shapefile(request, shapefile_id): try: shapefile = Shapefile.objects.get(id=shapefile_id) except Shapefile.DoesNotExist: return HttpResponseNotFound() if request.method == "GET": return render(request, "delete_shapefile.html", {'shapefile' : shapefile}) elif request.method == "POST": if request.POST['confirm'] == "1": shapefile.delete(...