как показать мягко удаленные элементы в laravel? - PullRequest
0 голосов
/ 11 июля 2020

У меня есть заказ, который принадлежит многим продуктам (сводная таблица), и счет-фактура, который принадлежит заказу! Я использовал мягкое удаление для отображения продуктов в моем заказе (это работает), и теперь я хочу отображать эти выброшенные элементы в своем счете! как я могу этого добиться? В модели заказа у меня есть это:

public function products()
{
    return $this->belongsToMany('App\Product','order_product','ord_id','prod_id')->withPivot('prod_quantity','discount')->withTimestamps();
}

, а в контроллере счетов - это:

public function show($id)
{
    $invoice = Invoice::with('order.products')->find($id);
    
    return response()->json([
        'error' => false,
        'invoice' => $invoice,
    ],200);
}

1 Ответ

0 голосов
/ 11 июля 2020

Используйте withTrashed()

public function show($id)
{
    $invoice = Invoice::withTrashed()
          ->with('order.products')
          -->find($id);
    
    return response()->json([
        'error' => false,
        'invoice' => $invoice,
    ],200);
}

EDIT

Убедитесь, что ваша модель использует свойство мягкого удаления.

https://laravel.com/docs/7.x/eloquent#soft -удаление

...