no creo que la solución vaya por ese lado.
Más me inclino a usar transacciones de base de datos y olvidarme de bloquear la página de edición del registro.
En todo caso, de ser muy necesario, o mejor dicho impresindible, otra forma es aperturar la transacción antes de mostrar la información en pantalla, hacer una actualización ficticia a la base de datos para bloquear el registro solicitado, recuperar la información, mostrarla y que el resto de usuarios espere hasta que al usuario que tiene el bloqueo se le ocurra cerrar la transacción, de esa manera estoy bloqueando desde que muestro la información y no únicamente la actualización de la data; pero definitivamente, no es óptimo ni recomendable bloquear la edición.

Quizá Gabriel nos pueda explicar cual sería el fin de bloquear el registro desde su edición.