Laravel красноречиво, получите ошибку 500 только с get () - PullRequest
0 голосов
/ 08 января 2020

Вот код:

    $search = request()->get('search');
    $conciergerieSelect = request()->get('conciergerie');
    $services = Service::get();
    $available = 'Disponible';

    $prestations = Prestation::with([
        'service:name'
    ])
    ->whereHas('item', function ($query) use ($available) {
        $query->where('status', $available);
    })
    ->whereIn('conciergerie_ids', [$conciergerieSelect])
    ->where('name', 'regexp', "/$search/i")
    ->get();

    $prestationsArrayIds = [];

    foreach($prestations as $prestation) {
        array_push($prestationsArrayIds, $prestation['_id']);
    }

    // dd($prestationsArrayIds); is okay i get 200 status

    $items = Item::orderBy('name')
        ->get();

     // Here if i do dd($items); it's okay i get 200 status

    return $result = [
        'items' => $items
    ];

Проблема в том, что я получаю ошибку 500, если возвращаю результат $, чтобы просто проверить элементы $, как здесь. У тебя есть идея? Спасибо.

Ответы [ 3 ]

0 голосов
/ 08 января 2020

Попробуйте с

return $items->toJson();

, если это не работает, попробуйте с

return $items->toArray()
0 голосов
/ 08 января 2020

Я наконец нашел решение: я забыл использовать ->paginate(50); вместо ->get(), потому что у меня есть система нумерации страниц. Извините и спасибо!

0 голосов
/ 08 января 2020

Пожалуйста, попробуйте следующий код, надеюсь, он вам поможет.

return [
    'items' => $items
];
...