2012-01-18 28 views
5

Có cách nào để thực hiện lệnh find() trong CakePHP chuyển đổi thành điều kiện IN không? Dường như các phương thức find() chỉ lấy một giá trị duy nhất để tìm kiếm.Cách tìm nhiều giá trị cho phương thức Cake PHP find()? (IN condition)

Tôi muốn làm điều gì đó như thế này:

$this->User->findAllById(array(1, 5, 7)); 

mà sẽ chuyển đổi các SQL để cái gì đó như:

SELECT * FROM users WHERE id IN (1, 5, 7); 

Trả lời

13
$this->User->find('all', array('conditions' => array('id' => array(1, 5, 7)))); 
+0

này làm việc cho số nguyên nhưng dường như không làm việc trên giá trị chuỗi. –

+0

Nó cũng chỉ hoạt động tốt đối với chuỗi. Truy vấn được tạo ra trông như thế nào? – deceze

+0

Xin lỗi, tôi mới dùng bánh. Tôi dường như không thể tìm cách dễ dàng in ra truy vấn được tạo ra. Tôi thay đổi ints để 'kiểm tra', 'test2' và tôi nhận được lỗi: Lỗi: SQLSTATE [42S22]: Cột không tìm thấy: 1054 Cột không xác định 'kiểm tra' trong 'where clause' –

Các vấn đề liên quan