Saber quién borró un registro en una base de datos.

86 views
Skip to first unread message

Offray Vladimir Luna Cárdenas

unread,
May 20, 2013, 9:02:49 PM5/20/13
to web2py-...@googlegroups.com
Hola,

Estamos teniendo un poco de bandalismo en el sitio web de HackBo[1],
nuestro hackerspace local, hecho en web2py y si bien pienso habilitar
las versiones de acuerdo a [2], sin embargo me gustaría también detectar
a los vándalos, así que acá vienen mis preguntas:

1. Cómo puedo saber quién borró qué en la base de datos?
2. Una vez active las versiones, cómo puedo revisar el histórico de las
mismas y activar una versión previa?

Gracias de antemano por la ayuda,

Offray

Enlaces:

[1] https://hackbo.co/
[2] https://groups.google.com/forum/?fromgroups#!topic/web2py/VWilAKDrEKQ

samuel bonilla

unread,
May 20, 2013, 10:03:32 PM5/20/13
to web2py-...@googlegroups.com
mira es sencillo en la base de datos hay una obcion que dice db.auth_event hay te das de cuenta los eventos que reliza cada usuario por ejemplo cuando cre un post cuando edita o borra algo espero que te sirva....

db.auth_event




--
Has recibido este mensaje porque estás suscrito al grupo "web2py-usuarios" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a web2py-usuarios+unsubscribe@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.



Alan Etkin

unread,
May 21, 2013, 12:48:02 PM5/21/13
to web2py-...@googlegroups.com, off...@riseup.net
1. Cómo puedo saber quién borró qué en la base de datos?

Los formularios crud, si se habilitó en la configuración, registran las operaciones de creación/modificación en la tabla auth_event como dijo Samuel. Además podés usar los parámetros <tabla>._after_delete y <tabla>._before_delete para crear los registros de auth_event con código personalizado en esas funciones(Cap. 6 del manual).


2. Una vez active las versiones, cómo puedo revisar el histórico de las
mismas y activar una versión previa?
 
El control de versiones de registros de la base de datos almacena los datos antiguos por defecto en tablas <nombre>_archive. Este formato se puede personalizar en el comando enable_record_versioning (Cap. 9 del manual)

Reply all
Reply to author
Forward
0 new messages