laravel 5.5中的关系无效



我正在尝试建立两个表之间的关系:

我的型号:

class Modele extends Model 
{
public function shoe()
{
return $this->hasMany('Shoe');
}
}
class Shoe extends Model 
{
public function modele()
{
return $this->belongsTo(Modele::class, 'IdModele','id');
}
}

我的控制器:

class shoeController extends Controller
{
public function index()
{
$shoesList= AppShoe::with('modele')->orderBy('idModele')->get();
return view('shoe.index',compact('shoesList'));
}
}

当我添加($shoeList)时,我有这个:

#relations: array:1 [▼
"modele" => null
] 

如果我尝试使用刀片中的参数,如下所示:

<p>{{$shoe->modele->idGender}}</p>

我有这个错误:

ErrorException抛出消息"正在尝试获取非对象的属性(View:C:\laragon\www\ipepsShoes2017\resources\views\shoe\index.blade.php)

我在这个项目中用同样的方法建立了表之间的其他关系,它们运行得很好。

我不明白为什么它不起作用。

谢谢。

尝试这个

class Modele extends Model 
{
public function shoe()
{
return $this->hasMany('AppShoe');
}
}
class Shoe extends Model 
{
public function modele()
{
return $this->belongsTo('AppModele', 'IdModele','id');
}
}

在您的视图中,首先检查{{print_r($shoe->modele)}}如果您得到对象,则调用param所需的

尝试为hasMany编写外键Modele模型:

class Modele extends Model 
{
public function shoe()
{
return $this->hasMany('Shoe', 'IdModele');
}
}

希望它能帮助你:)

最新更新