php - 我如何在一对多关系中过滤 laravel Eloquent 查询

标签 php laravel eloquent

我陷入了 Eloquent 查询! 我想仅显示具有特定角色 ID 的用户的所有相关数据。 预订:(有 created_by 字段)

预订模型::

 public function user()
{
    return $this->belongsTo('App\User','created_by');
}
  public function division()
{
    return $this->belongsTo('App\Division','division_id');
}

并且 users 表有一个列 role_id。 查看:

 @if(!empty($allBooking) && count($allBooking)>0)
                @foreach($allBooking as $key=>$booking)
                    <tr>
                        <td>{{$key+1}}</td>

                        <td class="text-capitalize">
                            @if($booking->division && $booking->division->division_name )
                                {{$booking->division->division_name}}
                            @else
                                N/A
                            @endif
                        </td>

如何获取所有 role_id 为 1 的预订数据? 我也想用纯粹的 Eloquent 从另一个到多个领域获得部门名称。

===============================edit

预算模型::

 public function user()
    {
        return $this->belongsTo('App\User','created_by');
    }
    public function subHead()
    {
        return $this->belongsTo('App\SubHead','sub_head_id');
    }

子头模型::

 public function head()
{
    return $this->belongsTo('App\Head','head_id');
}

工作模型::

    public function subHead()
{
    return $this->belongsTo('App\SubHead','sub_head_id');
}

public function bookings()
{
    return $this->hasMany('App\Booking','work_id');
}

最佳答案

如果 role_idusers 表中,使用 whereHas():

Booking::whereHas('user', function($q) use($roleId) {
    $q->where('role_id', $roleId);
})->get();

关于php - 我如何在一对多关系中过滤 laravel Eloquent 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48406571/

相关文章:

php - Magento:在 X 号之后向访问者显示弹出窗口。页数

php - 为什么我的 Laravel 模块出现 "class not found"错误?

laravel - Laravel 不允许更新属性

php - Laravel Eloquent ;显示最近的记录

PHP Gettext - 无翻译

php - 如何在cake php中自动求和/求和(第一个输入列数字+第二个输入列数字)?

laravel - 如何在 Laravel 中包含 Bootstrap-Vue

php - laravel aTob 表关系

php - 如何从 codeigniter 的 URL 中删除 Controller 名称?

mysql - 无法让 MYSQL 在 Laravel 中正确查询 JSON 列