Laravel: Получить мягко удаленную строку в конструкторе запросов - PullRequest
0 голосов
/ 27 сентября 2018

Как получить, например, строку, которая была мягко удалена? Это мой код:

$mov = $emp->movimientos()->where('movimiento.linea_id', intval($request->id_caso))->with('producto_nombre', 'costo_promedio');

У меня есть эта консультация, одна movimientos связана с costo_promedio, но если в каком-то случаеcosto_promedio мягко удален, результат в моей консультации $mov даст мне ноль в части costo_promedio.Дело в том, где я должен поставить метод withTrashed(), чтобы получить все данные, даже те, которые были мягко удалены

Спасибо за помощь

Ответы [ 2 ]

0 голосов
/ 27 сентября 2018

Вы можете вызывать функцию withTrashed() в любом месте экземпляра Eloquent Query Builder, но до get() или first() finction.

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

$mov = $emp->movimientos()->where('movimiento.linea_id', intval($request->id_caso))
    ->with([
        'producto_nombre',
        'costo_promedio' => function($q) {
            $q->withTrashed();  
        }
    ])->get();
0 голосов
/ 27 сентября 2018

Используйте with() с закрытием:

$mov = $emp->movimientos()
    ->where('movimiento.linea_id', intval($request->id_caso))
    ->with([
        'producto_nombre',
        'costo_promedio' => function($query) {
            $query->withTrashed();  
        }
    ]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...