Dette er af CakePHP's design. CakePHP se altid tinyint(1) som boolesk vil den derfor altid konvertere din værdi til true /false derfor 1 /0 .
For at løse dette problem, brug tinyint(2) i stedet for din kolonnetype. Husk at rydde din modelcache!
CakePHP-datatypedokumentation:
https://book.cakephp.org/3.0/en/orm/database-basics.html#data-types
Blogindlæg om dette:
https://blog.room34.com/archives/2649
Lignende spørgsmål og svar:
CakePHP og tinyint som boolean