如何解决试图获取非对象的属性-Laravel,无法显示我的外键数据
请帮助,我正在尝试显示数据库中的数据,但是显示的是表的“ id”(id Kelas)。我想在“ Kelas”表的“ Murids”表中显示“ kelas”和“ jurusan_kelas”。该表具有一对多关系。
这是错误Trying to get property 'jurusan_kelas' of non-object (View: D:\new xampp\htdocs\sekolah\resources\views\murid\indexMurid.blade.php) http://sekolah.test/murid
这是我的“肮脏”模型
protected $fillable = [
'nis','nama_murid','kelas','gender','tanggal_lahir','alamat','nomor_telp',];
public function kelas(){
return $this->belongsTo(Kelas::class,'id');
}
这是我的“凯拉斯”模型
protected $fillable = [
'kelas','jurusan_kelas','wali_kelas',];
public function murids(){
return $this->hasMany(Murid::class,'id');
}
这是“肮脏”的迁移
public function up()
{
Schema::create('murids',function (Blueprint $table) {
$table->id();
$table->bigInteger('nis')->unique();
$table->string('nama_murid');
$table->string('gender');
$table->date('tanggal_lahir');
$table->string('alamat');
$table->bigInteger('nomor_telp');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('murids');
}
这是“龙骨”的迁移
public function up()
{
Schema::create('kelas',function (Blueprint $table) {
$table->id();
$table->string('kelas');
$table->string('jurusan_kelas');
$table->string('wali_kelas')->unique();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('kelas');
}
这是将“ kelas”添加到多表迁移中
public function up()
{
Schema::table('murids',function (Blueprint $table) {
//
$table->unsignedBigInteger('kelas')->index()->after('nama_murid');
$table->foreign('kelas')->references('id')->on('kelas')->onDelete('cascade');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('murids',function (Blueprint $table) {
//
$table->dropColumn('kelas');
});
}
这是我的“ index.blade”
@foreach ($murids as $murid)
<tr>
<td>{{ $murid->nis }} </a></td>
<td>{{ $murid->nama_murid }}</td>
<td>{{ $murid->kelas->jurusan_kelas}}</td>
<td>{{ $murid->gender }}</td>
<td>{{ $murid->tanggal_lahir }} </a></td>
<td>{{ $murid->alamat }}</td>
<td>{{ $murid->nomor_telp }}</td>
<td>
<form action="{{ route('murid.destroy',$murid) }}" method="post">
@csrf
<input type="hidden" name="_method" value="DELETE">
<button type="submit" class="btn btn-danger">Delete</button>
</form>
</td>
<td>
<form action="{{ route('murid.edit',$murid) }}">
@csrf
{{-- <input type="hidden" name="_method" value="EDIT"> --}}
<button type="submit" class="btn btn-info">Edit</button>
</form>
</td>
</tr>
@endforeach
this is my table to display the data from the database
this is the data that i want to show on the red circle
我的问题是显示另一个表中的另一个数据,我想获取的数据不是表(fk)的“ id”
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。