use get_object_or_404 rather than repeated try excepts