У меня есть таблицы 3 дБ: книги (id, название, автор, ...) и заказы (id, book_id, user_id, ...) и пользователи (id, имя, имя пользователя, ...), и я быхотел бы получить названия книг, заказанных данным пользователем.
Я подготовил запрос с использованием метода query ():
$this->set('user_orders', $this->Order->query("SELECT orders.id, orders.status,
(SELECT books.title FROM books WHERE books.id = orders.book_id) as `titles`
FROM orders WHERE orders.user_id = ".$this->Auth->user('id').""));
Теперь я хотел бы получить тот же результат, но с помощью команды find() метод:
$this->set('user_orders', $this->Order->find('all', array(
'fields' => array(
'Order.id',
'status',
'Order.book_id',
'Book.title' => $this->Book->find('first',array(
'fields' => 'Book.title',
'conditions'=> array('Book.id = Order.id')
)),
),
'conditions' => array('user_id' => $this->Auth->user('id')))));
Однако это не работает.Как это следует исправить, чтобы получить такой же эффект, как в коде выше?
Привет