php - 在 Laravel 中的关系表中添加 where 子句

标签 php mysql laravel laravel-5.1

我有一个问题。此查询获取所需的数据,其中包括相关表delivery

$RS = $this->instance->user()->with(['driver.trailer', 'driver.truck', 'driver.delivery']);

我研究了这个主题,我认为下面的部分应该可以解决问题,但我不知道如何将两者结合在一起。

 //add WHERE clause to driver.delivery:
->whereBetween('created_at', [
 Carbon\Carbon::parse('last monday')->startOfDay(),
 Carbon\Carbon::parse('next sunday')->endOfDay(),])
->get();

我是 Laravel 新手(现在已经使用了大约 10 天),这个概念对我来说非常新。 (我在编写标准查询时没有任何问题)

最佳答案

试试这个:

return $this->instance->user()->with(['driver.delivery' => function($query){
        $query->whereBetween('created_at', [ 
            Carbon\Carbon::parse('last monday')->startOfDay(),
            Carbon\Carbon::parse('next sunday')->endOfDay() ]);
    }])->with(['driver.trailer' 'driver.truck'])->get();

关于php - 在 Laravel 中的关系表中添加 where 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36655902/

相关文章:

php - 显示用户通过 Laravel 关系关注的用户的帖子

mysql - Bash中循环遍历mysql的结果集

php - Lithium 从 mysql 数据中选择选项

php - Laravel Echo 私有(private) channel 与 Laravel echo 服务器 |雷迪斯

mysql - 在 Laravel 5.2 中使用多个 MySQL 数据库连接查询关系是否存在

php - PayPal PHP Rest SDK 买家地址 PPOpenIdAddress

php - 不管怎样,CSS 都不能被覆盖;具有响应式 style_options.php 的 WordPress

php - 使用ajax提交表单后获取表单值(mysql_insert_id)

php - Laravel 5.8 使用子域作为 domain.com/api 旁边的 API 端点

php - 将 SQL 转换为 PDO 以防止 SQL 注入(inject)