Đây là thiết kế của CakePHP. CakePHP luôn nhìn thấy tinyint(1)
dưới dạng boolean do đó nó sẽ luôn chuyển đổi giá trị của bạn thành true
/ false
do đó 1
/ 0
.
Để khắc phục sự cố này, hãy sử dụng tinyint(2)
thay vào đó cho loại cột của bạn. Hãy nhớ xóa bộ nhớ cache của mô hình của bạn!
Tài liệu về kiểu dữ liệu CakePHP:
http://book.cakephp.org/3.0/en/orm/database-basics.html#data-types
Bài đăng trên blog về điều này:
http://blog.room34.com/archives/2649
Hỏi và đáp tương tự:
CakePHP và tinyint dưới dạng boolean