Как удалить Отношения в Laravel, которые могут быть нулевыми? - PullRequest
0 голосов
/ 06 мая 2018

Когда пользователь решает деактивировать свою учетную запись, я удаляю все остальные таблицы, которые также принадлежат пользователю.

В приложении \ Пользователь:

protected static function boot()
{
    parent::boot();

    static::deleting(function ($user) {
        $user->privacy->delete();
        $user->info->delete();

        $user->comments->each->delete();

        //If connected
        $user->instagram->delete(); //my Problem
    });
}

public function instagram(){
    return $this->hasOne(SocialInstagramAccount::class);
}

Есть ли хороший способ, как использовать существующую взаимосвязь для удаления модели, если она может быть нулевой?

С кодом выше я получаю: «Вызов функции-члена delete () on null», когда Пользователь не вошел в Instagram. Ясно, что null-> delete () не работает.

1 Ответ

0 голосов
/ 06 мая 2018

Используйте это:

$user->instagram()->delete();
$user->comments()->delete();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...