У меня есть две таблицы как users
и notifications
, и у меня есть внешний ключ notification_id
в моей таблице users
, а в notifications.blade.php
я пытаюсь получить пользователя через id
из notifications
таблица как:
NotificationController:
public function notifications() {
$notifications = App\Notification::latest('created_at')->get();
return view('notifications', compact('notifications'));
}
notifications.blade.php:
@foreach ($notifications as $notification)
{{ $notification->user->id }}
@endforeach
User.php (модель):
public function notifications() {
return $this->hasMany('App\Notifications', 'notification_id');
}
Notification.php (модель):
public function user() {
return $this->belongsTo('App\User', 'notification_id');
}
Схема таблицы уведомлений:
Schema::create('notifications', function (Blueprint $table) {
$table->engine = "InnoDB";
$table->increments('id');
$table->string('message');
$table->timestamps();
});
Схема таблицы пользователей:
Schema::create('users', function (Blueprint $table) {
$table->engine = 'InnoDB';
$table->increments('id');
$table->string('email')->unique();
$table->string('password');
$table->unsignedInteger('notification_id')->nullable();
$table->foreign('notification_id')->references('id')->on('notifications');
});
но я получаю Попытка получить свойство необъекта Ошибка.