小编Ron*_*res的帖子

如何使用 Laravel 通过查询将 2 个表连接起来

我的数据库中有一个用户和聊天表。以下是我的表中的一些示例数据:

用户表:

id  |   name  |    avatar
1       john     default.png
2       mark       picture.jpg
Run Code Online (Sandbox Code Playgroud)

聊天表:

   id  |   user_id  |  friend_id | message | status
    1        1           2           hello     0
    2        1           2           hi        1
Run Code Online (Sandbox Code Playgroud)

状态列的目的是确定消息是否已被阅读。

  status 0 = unread message
  status 1 = read message
Run Code Online (Sandbox Code Playgroud)

这是我对所有未读消息进行分组和计数的代码:

        $chat = DB::table('chats')
             ->join('users', 'users.id', '=', 'chats.user_id')
             ->select('user_id', DB::raw('count(*) as total'))
             ->where('friend_id', Auth::user()->id)
             ->where('status',0)
             ->groupBy('user_id')
             ->get();
Run Code Online (Sandbox Code Playgroud)

这是我尝试插入用户头像时的代码,但收到此错误:users.avatar' isn't in GROUP BY

        $chat = DB::table('chats')
             ->join('users', 'users.id', '=', 'chats.user_id')
             ->select('users.avatar','user_id', DB::raw('count(*) as total'))
             ->where('admin_id', Auth::user()->id) …
Run Code Online (Sandbox Code Playgroud)

mysql laravel-5

1
推荐指数
1
解决办法
2万
查看次数

在laravel控制器中创建数据数组

$document = new Document();
$document->title = $request['title'];
$document->description = $request['description'];
Run Code Online (Sandbox Code Playgroud)

当我尝试使用输出上述代码时,echo $document;我得到以下结果:

{"title":"asdfasdf","description":"asdfasdfsadf"}
Run Code Online (Sandbox Code Playgroud)

我想要的是创建我自己的数据数组并输出相同的格式。这是我尝试尝试的代码,但它不起作用:

    $data = array(
      "title" => "hello",
      "description" => "test test test"
    );

    echo $data;
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激。谢谢。

arrays arraylist laravel

1
推荐指数
1
解决办法
4万
查看次数

标签 统计

arraylist ×1

arrays ×1

laravel ×1

laravel-5 ×1

mysql ×1