我有三个模型
- 用户
- 注意(与帖子相同)
- 友谊
我正在尝试检索我订阅的用户共享的帖子。
我在 UsersController 中所做的正是我首先检索了我所有朋友的列表
$lof=$this->User->Friendship->find('all', array('conditions'=>array('Friendship.user_from'=>$this->Auth->user('id')), 'contain'=>array('Friendship.user_to')));
现在我正在尝试显示我朋友分享的所有帖子
$allnotes= $this->User->Note->find('all', array('conditions'=>array('Note.user_id'=>array($lof)), 'order' => array('Note.created DESC')));
这给了我一个错误
Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Array' in 'where clause'
SQL Query: SELECT `Note`.`id`, `Note`.`user_id`, `Note`.`notes`, `Note`.`created`, `User`.`id`, `User`.`name`, `User`.`email`, `User`.`username`, `User`.`password`, `User`.`gender`, `User`.`dob`, `User`.`image`, `User`.`tmp_name`, `User`.`search` FROM `fyp`.`notes` AS `Note` LEFT JOIN `fyp`.`users` AS `User` ON (`Note`.`user_id` = `User`.`id`) WHERE `Note`.`user_id` = (Array) ORDER BY `Note`.`created` DESC
我知道我正在尝试添加一个数组,但是当我尝试像这样的相同查找查询时,它起作用了。
$allnotes= $this->User->Note->find('all', array('conditions'=>array('Note.user_id'=>array(114,115)), 'order' => array('Note.created DESC')));
在我的查询中,仅从 Friendship 表中获取 user_to 的值并将其分配为等于 Note.user_id 的解决方案到底是什么。