Finalmente lancé mi proyecto al nivel de producción y de repente tengo algunos problemas con los que nunca tuve que lidiar en la fase de desarrollo.
Cuando los usuarios publican algunas acciones, a veces aparece el siguiente error.
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 111, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "home/ubuntu/server/opineer/comments/views.py", line 103, in comment_expand
comment = Comment.objects.get(pk=comment_id)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/manager.py", line 131, in get
return self.get_query_set().get(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/django/db/models/query.py", line 366, in get
% self.model._meta.object_name)
DoesNotExist: Comment matching query does not exist
Lo que realmente me frustra es que el proyecto funciona bien en el entorno local y, además, el objeto de consulta coincidente SI existe en la base de datos.
Ahora sospecho que el usuario está accediendo a la base de datos cuando está reservada para otros usuarios, pero no hay forma de probar mi argumento ni tengo ninguna solución.
¿Alguien ha tenido este tipo de problema antes? ¿Alguna sugerencia sobre cómo resolver este problema?
Muchas gracias por adelantado por su ayuda.
EDITAR: He consultado manualmente la base de datos utilizando la misma información recuperada del correo electrónico de error del servidor que recibí. Pude acceder a la entrada sin ningún problema. Además, parece que exactamente el mismo comportamiento que realizó el usuario no plantea ningún problema la mayor parte del tiempo, sino en algunos casos (que aún se desconocen). En conclusión, definitivamente no es un problema con la entrada que falta en la base de datos.
comment = Comment.objects.get(pk=comment_id)
verifique que la identificación exista en la base de datos