Я хочу получить доступ к данным, на которые ссылаются из другой таблицы, но я получаю это:
«Попытка получить свойство layanan не объекта».
Итак, у меня есть 2 таблицы, Objeks и Layanans. У Layanans может быть много Objeks, я уже создал его внешний ключ, и запрос работает в базе данных, но когда я хочу просмотреть Objeks и обратиться к nama_layanan
, полученному от Layanans, это выдает мне ошибку ...
Вот подробности
Таблица Layanans
$table->bigIncrements('layanans_id');
$table->string('nama_layanan');
$table->timestamps();
Таблица Objeks
$table->bigIncrements('objeks_id');
$table->unsignedBigInteger('nama_layanan');
$table->string('tipe_objeks');
$table->timestamps();
$table->foreign('nama_layanans')->references('layanans_id')->on('layanans')
->onUpdate('cascade')
->onDelete('cascade');
Layanan . php
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Layanan extends Model
{
protected $fillable=[
'nama_layanan'
];
protected $primaryKey = 'layanans_id';
public function objek() {
return $this->hasMany(Objek::class);
}
}
Objek. php
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Objek extends Model
{
protected $fillable=[
'nama_layanan', 'tipe_objeks'
];
protected $primaryKey = 'objeks_id';
public function layanan() {
return $this->belongsTo(Layanan::class);
}
}
Это мой foreach object.blade. php
@foreach ($data as $item)
<tr>
<td>{!! $item->objeks_id !!}</td>
<td>{!! $item->objeks->layanan->nama_layanan !!}</td>
<td>{!! $item->tipe_objeks !!}</td>
</tr>
@endforeach
в чем здесь проблема?