我创建了一个私聊 我的数据库看起来像这样
+----+--------------------------------------+---------+------------------+---------------------+---------------------+
| id | msg | user_id | receiver_user_id | created_at | updated_at |
+----+--------------------------------------+---------+------------------+---------------------+---------------------+
| 1 | In dui magna posuere | 1 | 2 | 2016-03-27 11:50:25 | 0000-00-00 00:00:00 |
| 2 | Sed a libero | 1 | 2 | 2016-03-27 11:50:41 | 0000-00-00 00:00:00 |
| 3 | Vivamus consectetuer hendrerit lacus | 3 | 1 | 2016-03-27 11:51:09 | 0000-00-00 00:00:00 |
| 4 | Aenean leo ligula | 4 | 1 | 2016-03-27 16:13:32 | 0000-00-00 00:00:00 |
+----+--------------------------------------+---------+------------------+---------------------+---------------------+
我试图获取聊天参与者的列表,
因此,如果我是用户ID 1,我的参与者是2,3,4
如果我是用户ID 4我的参与者是1
我不确定该怎么做。 我在laravel 5.2上。但我认为这需要原始查询。
答案 0 :(得分:0)
$users = PM::select('user_id')
->where('receiver_user_id', '=', \Auth::user()->id)
->union(PM::select('receiver_user_id')->where('user_id', '=', \Auth::user()->id));
将其添加到答案中,以便它无法显示在未回答的问题中。