如果我使用模型,这很容易解决,但如果我没有使用模型的可用性,是否有可能得到等同于->with()
与DB::table
的结果?
不,原因如下
Laravel模型正在使用Eloquent,它是一个ORM库。
例如,一个类模型可以有许多教师关系,如果你想获取一个包含所有教师的类,你可以这样做:
$class = Classes::with('teachers')->find($id);
// $class->teachers contain all the teachers in the given class
使用查询构建器,您需要做一些类似
的事情$class = DB::table('classes')->find($id);
$teachers = DB::table('teachers')->where('class_id', $class->id)->get();
您可以查看文档:https://laravel.com/docs/5.6/eloquent
Ref线程
不,现在这是不可能的,因为数据库行不支持元素关系你应该使用ORM格式。这里有一些例子:-$user = user::with('school')->get();