<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Place extends Model
{
public function parent()
{
return $this->belongsTo('place', 'parent_id');
}
public function children()
{
return $this->hasMany('place', 'parent_id');
}
}
这是我的模特
并且在我的控制器中我尝试使用&#34;来加载&#34;但是在我调用get()
方法后,我收到错误:
Class 'place' not found
我就是这样做的:
$data['places'] = Place::with('children', 'parent')->get();
班级本身就在那里,但只有在我调用get()
或find()
方法时才会发生这种情况
任何线索?
答案 0 :(得分:1)
像这样更改它,因为你需要提到命名空间和模型, 在功能&#39; App \ Place&#39;
中public function parent()
{
return $this->belongsTo('App\Place', 'parent_id');
}
Place::with(['children', 'parent'])->get();
OR
Place::with('children')->with('parent')->get();
答案 1 :(得分:1)
您的人际关系错误,请使用App\Place
注意App
和资本P
。
class Place extends Model
{
public function parent()
{
return $this->belongsTo('App\Place', 'parent_id');
}
public function children()
{
return $this->hasMany('App\Place', 'parent_id');
}
}