-1

我有三个表,即类、预订和用户。我想阅读获得批准的用户预订。

但它给了我一个 Column not found 的错误,即使所有的列都在那里

该表的结构如下

类表

预订表

用户表

我得到的错误 在此处输入图像描述

这是我的查询 在此处输入图像描述

4

2 回答 2

1

你能告诉我你的模型吗?你有什么理由不使用关系?

你错过了雄辩的魔力

在您的课程模型上使用 hasMany 预订和在您的预订模型上使用 belongsTo 可以解决您的问题。

https://laravel.com/docs/7.x/eloquent-relationships

于 2020-06-20T23:50:18.227 回答
0

我设法使用 Laravel 文档中的 laravel Join 解决了这个问题。查询如下,并且按我的预期工作。

 $myCourses = Classes::join('bookings', 'classes.id', '=', 'bookings.course_id')
        ->select('classes.*')
        ->where('bookings.customer_id', '=', auth()->user()->id)
        ->where('bookings.status', '=', 'Approved')
        ->get();

浏览了他们网站上的 laravel 文档并发现了这一点。链接到解决方案源 https://laravel.com/docs/4.2/queries

谢谢

于 2020-06-21T00:21:35.437 回答