Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 拉维关系设置_Php_Laravel_Laravel 5 - Fatal编程技术网

Php 拉维关系设置

Php 拉维关系设置,php,laravel,laravel-5,Php,Laravel,Laravel 5,我正在从事Laravel的安装工作,在那里我有(除其他外) 教师(表:用户(cols:id,name,type),模型:User,users.type=2) 学生(表:用户(id、名称、类型)、模型:用户、用户.type=1) 学校(表:学校(id,名称),型号:学校) 学生集合(表:学生集合(id,名称),模型:学生集合) &表student_collections_users,用于将学生用户链接到集合(模型:StudentsCollections,columns id,user_id,co

我正在从事Laravel的安装工作,在那里我有(除其他外)

  • 教师(表:用户(cols:id,name,type),模型:User,users.type=2)
  • 学生(表:用户(id、名称、类型)、模型:用户、用户.type=1)
  • 学校(表:学校(id,名称),型号:学校)
  • 学生集合(表:学生集合(id,名称),模型:学生集合)
  • &表student_collections_users,用于将学生用户链接到集合(模型:StudentsCollections,columns id,user_id,collection_id)
我已经设法建立了一些关系,但我不能让我的头周围得到

  • 哪位老师教学生
  • 学生属于哪些收藏
目前,我正在尝试使用

//User.php
public function collections() {
    $collection = $this->hasManyThrough('\App\StudentsCollections', '\App\User', 'id', 'user_id');
    return $collection;
}

//Controller
$user = \App\User::find($id);
$user->collections = $user->collections();
但它只返回集合的id。如何获取每个集合的完整数据对象


我使用的是Laravel 5.3。

首先,在您的示例代码中,表名是否正确

我看到一个名为“students\u collections”的表,但您的BelongToMany有一个表名(第二个参数)“student\u collections\u users”。我想那是个打字错误

第二,返回空结果的是什么?调用用户模型上的collections方法或collections属性?你能添加一些示例代码吗


第三:数据库中有实际数据(通过播种机还是真实数据)?我知道这是显而易见的,但有时人们往往会忘记显而易见的…:-)

首先,在示例代码中,表名是否正确

我看到一个名为“students\u collections”的表,但您的BelongToMany有一个表名(第二个参数)“student\u collections\u users”。我想那是个打字错误

第二,返回空结果的是什么?调用用户模型上的collections方法或collections属性?你能添加一些示例代码吗


第三:数据库中有实际数据(通过播种机还是真实数据)?我知道这是显而易见的,但有时人们往往会忘记显而易见的…:-)

我对这个问题做了一些修改,做了一些进一步的修改,但不是全部修改。中间表名中有一个输入错误。第三:是的,我可以通过原始数据库查询得到正确的结果,但我正在寻找一种更干净的方法,让我的头脑围绕着“Laravel心态”:)我对这个问题做了一些修改,做了一些进一步的工作,但不是全部。中间表名中有一个输入错误。第三:是的,我可以通过原始数据库查询得到正确的结果,但我正在寻找一种更干净的方法,让我的头脑围绕着“Laravel心态”: