视图返回laravel中某些ID的错误
这对我来说真的很奇怪。当我想显示行中的数据时,一些数据返回错误。 我只能查看id为视图返回laravel中某些ID的错误,laravel,dynamic,model,controller,laravel-blade,Laravel,Dynamic,Model,Controller,Laravel Blade,这对我来说真的很奇怪。当我想显示行中的数据时,一些数据返回错误。 我只能查看id为的数据s(1-7、10、13-17、22等),id为的数据(8,9,11,12,18,19,20,21…)返回错误 如果我转到http://manajemenpasien.com/PasienPoli/17,我得到了我想要的页面。但是当转到此http://manajemenpasien.com/PasienPoli/19,我收到以下错误: ErrorException in Collection.php line
的数据s(1-7、10、13-17、22等)
,id为的数据(8,9,11,12,18,19,20,21…)
返回错误
如果我转到http://manajemenpasien.com/PasienPoli/17
,我得到了我想要的页面。但是当转到此http://manajemenpasien.com/PasienPoli/19
,我收到以下错误:
ErrorException in Collection.php line 1564:
Property [nama] does not exist on this collection instance. (View: D:\myProjects\manajemenPasien\resources\views\PasienPoli\show.blade.php)
[nama]
是表pasiens
这是我在PasienPoliController
中看到的:
public function show($id)
{
$pasienpoli = PasienPoli::find($id);
$pasien = Pasien::find($id)->PasienPoli;
return view('pasienpoli.show', compact('pasienpoli','pasien'));
}
PasienPoli型号
:
public function pasien()
{
return $this->belongsTo('App\Pasien');
}
public function pasienpoli()
{
return $this->hasMany('App\PasienPoli');
}
Pasien型号
:
public function pasien()
{
return $this->belongsTo('App\Pasien');
}
public function pasienpoli()
{
return $this->hasMany('App\PasienPoli');
}
show.blade.php
:
<h2>{{$pasienpoli->pasien->nama}}</h2>
pasiens
的表结构:
id - int(10) - auto_increment
nama - varchar(50)
这有什么问题?这些ID很可能不存在于您的数据库中。检查您的数据库或在视图中添加集合,以了解发生了什么 将您的代码修改为:
public function show($id)
{
if(($pasienpoli = PasienPoli::find($id)) == NULL)
return view('pasienpoli.notfound', []);
$pasien = Pasien::find($id)->PasienPoli;
return view('pasienpoli.show', compact('pasienpoli','pasien'));
}
如果id不存在,您可以返回另一个视图或您想要的内容。我已经检查了它们,它们都存在。dd($pasienpoli)要查看您获得的数据,请使用id
=10我获取数据,使用id
=19的dd表示为空。抱歉id
=19为空,id
=9在模具转储中显示结果。但是当'id=10显示数据时删除dd()
时出错。我发现了问题。在show页面中有一个隐藏的字段表单,它的值是{{$pasien->nama}
当我替换为{{$pasienpoli->pasien->nama}
时解决的。无论如何,谢谢你抽出时间。我发现了问题。在show页面中有一个隐藏的表单字段,它的值是{{$pasien->nama}
当我用{{$pasienpoli->pasien->nama}
替换它时解决的。无论如何,谢谢你抽出时间。