试图获得财产';部门';具有一对多关系的laravel中的非对象
实际上我想和两个表建立关系,一个是学生表,其中有学生的一些数据。另一张桌子有部门通知。我想根据学生部的要求查看系通知。学生在学生表上有一个学生的登录id、密码、部门和许多其他信息。屏幕截图如下所示试图获得财产';部门';具有一对多关系的laravel中的非对象,laravel,eloquent,Laravel,Eloquent,实际上我想和两个表建立关系,一个是学生表,其中有学生的一些数据。另一张桌子有部门通知。我想根据学生部的要求查看系通知。学生在学生表上有一个学生的登录id、密码、部门和许多其他信息。屏幕截图如下所示 public function individualdepartment(){ $this->AdminAuthCheck(); $id=Session::get('id'); $student=Administration::find($id);
public function individualdepartment(){
$this->AdminAuthCheck();
$id=Session::get('id');
$student=Administration::find($id);
return view('Student.department',compact('student'));
}
现在我想尝试根据部门访问另一个表部门。屏幕截图如下所示
这里给出了CseDepartment模型
public function administration()
{
return $this->belongsTo('App\Administration','dept');
}
管理模式
public function department()
{
return $this->hasMany('App\CseDepartment','dept');
}
函数如下所示
public function individualdepartment(){
$this->AdminAuthCheck();
$id=Session::get('id');
$student=Administration::find($id);
return view('Student.department',compact('student'));
}
查看页面部门
@foreach ($student as $students)
{{-- expr --}}
<tr>
<td>{{$students->department->name}}</td>
<td>{{$students->department->message}}</td>
<td></td>
<td></td>
<td></td>
</tr>
@endforeach
@foreach($student as$students)
{{--expr--}
{{$students->department->name}
{{$students->department->message}
@endforeach
在您的控制器中,您正在调用find()
方法,该方法为您提供一个对象,即学生
$student=Administration::find($id);
在您的blade页面中,您将要求循环该单个对象并生成一个集合:
@foreach ($student as $students) // There is only ONE student, this will not loop.
如果您想让上述功能发挥作用,可以从控制器抓取一个集合:
// Note the plural naming convention to make it a little more clear
$students=Administration::all();
return view('Student.department',compact('students'));
然后在刀片文件中,您可以这样循环:
@foreach ($students as $student) // note the name plural --> singluar
<tr>
<td>{{$student->department->name}}</td> // Now you have a single student
<td>{{$student->department->message}}</td>
@foreach($students as$student)//注意复数-->singluar的名称
{{$student->department->name}}//现在你只有一个学生了
{{$student->department->message}
这将解决非对象错误。我可以看到您正在循环中使用$student->department
,该循环应该是$student->department