Hola ariste.
No entendi muy bien tu problema.
Dices que si envias la id funciona la modificacion pero todos los datos se modifican tambien,
que dando estos iguales?
En tu controlador escribe json_encode($this->data) e imprime tu resultado( esto para debugear)
tambien ensiende tu debugeador y copia la instruccion sql de modificacion que ejecuta
Mensionas Que no te imprime los datos para modificar si pones el codigo
En este caso no veo ningun find que te haga consultas en la bd o ¿¿como realizas tus busqedas??
Imprime lo que te he mencionado para ver en que puedo ayudarte
saludos