Laravel collection-> diff () не работает при использовании select - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть таблица, в которой я хочу найти разницу в определенных столбцах.Я делаю это с diff ():

$inventoryitems1 = InventoryItem::where('inventory_id', $request->get('inventory1'))
    ->select('owner_id', 'location_id', 'asset_id')
    ->get();
$inventoryitems2 = InventoryItem::where('inventory_id', $request->get('inventory2'))
    ->select('owner_id', 'location_id', 'asset_id')
    ->get();
$difference = $inventoryitems2->diff($inventoryitems1);

А потом я получаю пустой массив.Но если у меня нет выбора в моей коллекции.Работает, показывает все разные строки.Есть ли другой способ сделать это, или этот правильный, но я не делаю это правильно?

ОБНОВЛЕНИЕ У меня есть коллекция $ inventoryitems1, которая выглядит так:

*Коллекция 1009 *

и $ inventoryitems1, которая выглядит следующим образом:

0: {asset_id: 2, owner_id: 2, location_id: 1}
1: {asset_id: 3, owner_id: 6, location_id: 1}

Я пытаюсь найти различия в этих двух коллекциях, где мы видим, что owner_id отличается ввторая коллекция.Как я могу получить только те объекты, где произошли некоторые изменения (различия).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...