У меня следующий вопрос.
Часть кода:
$result = $this->find('all', array(
'contain' => array(
'User' => array(
'fields' => 'id',
'conditions' => array(
'id' => $user_id
)
)
),
'fields' => 'url'
));
Эта функция find () вызвана в методе класса модели Project, и я хочу получить только проекты, в которых пользователь.id равно некоторому идентификатору пользователя, переданному моему методу.Пользователь HABTM Project и Project HABTM User.
Но после выполнения у меня есть следующее:
app/views/projects/index.ctp (line 1)
Array
(
[0] => Array
(
[Project] => Array
(
[url] => http://purpled.biz
[id] => 1
)
[User] => Array
(
[0] => Array
(
[id] => 4
[ProjectsUser] => Array
(
[user_id] => 4
[project_id] => 1
[projects_users_role_id] => 0
)
)
)
)
[1] => Array
(
[Project] => Array
(
[url] => http://google.com
[id] => 2
)
[User] => Array
(
[0] => Array
(
[id] => 4
[ProjectsUser] => Array
(
[user_id] => 4
[project_id] => 2
[projects_users_role_id] => 0
)
)
)
)
[2] => Array
(
[Project] => Array
(
[url] => http://test.com
[id] => 3
)
[User] => Array
(
)
)
)
Как вы видите, есть последний массив с пустым [User] массивом, так как я могуисключить этот пустой массив (я имею в виду целый [2] массив) без использования блоков foreach / if?Я знаю, что использование bindModel также подойдет, но это не мой вопрос;) Итак, как?