Laravel SoftDeletes по-прежнему возвращает записи, использованные в соединениях, даже если в качестве элемента в поле - PullRequest
0 голосов
/ 28 октября 2019

Я запрашиваю модель с объединениями, которые не имеют NULL_at, но они все еще возвращают результаты.

Пример: posts таблица объединяет таблицу post_likes, обе с мягким удалением.

Posts::join(
   'post_likes',
   'post_id',
   '=',
   'id'
)->get();

1 Ответ

0 голосов
/ 28 октября 2019

Мой обходной путь - это проверка вручную в соединении, я бы предпочел, чтобы это было автоматически, поэтому я оставлю вопрос открытым.

Posts::join(
   'post_likes',
   function ($join) use ($model) {
      $join->on(
         'post_id',
         '=',
         'id'
      );

      if ($model->hasColumn('deleted_at')) {
         $join->whereNull('post_likes.deleted_at');
      }
   }
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...