Laravel 5.3中的查询生成器联接错误

Laravel 5.3中的查询生成器联接错误,laravel,eloquent,laravel-5.3,laravel-query-builder,laravel-eloquent,Laravel,Eloquent,Laravel 5.3,Laravel Query Builder,Laravel Eloquent,在我的控制器中 $thread = DB::table('threads') ->join('users', 'users.id', '=', 'threads.user_id') ->select('users.name') ->orderBy('threads.id', 'DESC') ->get(); return view('thread.index', compact('thread'))

在我的控制器中

$thread = DB::table('threads')
         ->join('users', 'users.id', '=', 'threads.user_id')
         ->select('users.name')
         ->orderBy('threads.id', 'DESC')
        ->get();

 return view('thread.index', compact('thread'));
在我的索引中

@foreach($thread as $item)
                  <td> {{ $item->thread }} </td>
                  <td> {{ $item->deskripsi }} </td>
                   <td> <p> Oleh : {{ $item->user_id }}</p> </td>
                      <td>  {{ $item->created_at->diffForHumans() }} </td>

  @endforeach            

有什么解决办法吗?我想在表users中显示用户名,这取决于您在模型中定义的关系。如果用户有线程,那么您应该检索所需的用户,并使用compact将其发送到刀片服务器。在用户模型中使用此功能

 public function getThreads()
    {
        return $this->hasMany(Threads::class);
    }
如果您的关系正确,您应该能够通过以下方式获得刀片服务器中的线程:

@foreach($users as $user)
      @foreach($user->getThreads as $thread)
                  <td> {{ $thread->thread }} </td>
                  <td> {{ $thread->deskripsi }} </td>
                  <td> <p> Oleh : {{ $thread->user_id }}</p> </td>
                  <td>  {{ $thread->created_at->diffForHumans() }} </td>
      @endforeach 
@endforeach  
@foreach($users作为$user)
@foreach($user->getThreads as$thread)
{{$thread->thread}
{{$thread->deskripsi}
Oleh:{{$thread->user_id}}

{{$thread->created_at->diffForHumans()} @endforeach @endforeach
这取决于您在模型中定义的关系。如果用户有线程,那么您应该检索所需的用户,并使用compact将其发送到刀片服务器。在用户模型中使用此功能

 public function getThreads()
    {
        return $this->hasMany(Threads::class);
    }
如果您的关系正确,您应该能够通过以下方式获得刀片服务器中的线程:

@foreach($users as $user)
      @foreach($user->getThreads as $thread)
                  <td> {{ $thread->thread }} </td>
                  <td> {{ $thread->deskripsi }} </td>
                  <td> <p> Oleh : {{ $thread->user_id }}</p> </td>
                  <td>  {{ $thread->created_at->diffForHumans() }} </td>
      @endforeach 
@endforeach  
@foreach($users作为$user)
@foreach($user->getThreads as$thread)
{{$thread->thread}
{{$thread->deskripsi}
Oleh:{{$thread->user_id}}

{{$thread->created_at->diffForHumans()} @endforeach @endforeach
您正在调用一些属性,如
线程
桌面RIPSI

<td> {{ $item->thread }} </td>
<td> {{ $item->deskripsi }} </td>

您正在调用一些属性,如
thread
deskripsi

<td> {{ $item->thread }} </td>
<td> {{ $item->deskripsi }} </td>

你能给我们看一下
$thread
的内容吗?你实际上没有在这里使用
雄辩的
。是的,我很抱歉。它的查询生成器。你能给我们看一下
$thread
的内容吗?你实际上没有在这里使用
雄辩的
。是的,我很抱歉。它的查询生成器。感谢它的工作!我只更改users.name成为users.*请注意,有时两个表中的列名可能相同,但使用通配符(*)时会出现错误。e、 g如果用户有一个列
名称
,线程也有一个列名为
名称
,那么
users.*,threads.*
将引发错误。感谢它的工作!我只更改users.name成为users.*请注意,有时两个表中的列名可能相同,但使用通配符(*)时会出现错误。e、 g如果用户有一个列
名称
,线程也有一个列名为
名称
,那么
users.*,threads.*
将引发错误。