Laravel Multiple Foreach на контроллере - PullRequest
0 голосов
/ 26 сентября 2018

У меня проблема с использованием Laravel. Я хочу сделать живой поиск с использованием ajax, и я хочу попробовать foreach-данные на контроллере, основанные на отношении один ко многим, но с ошибкой, подобной этой

"Свойство [proyek] не существует в этом экземпляре коллекции. "

Эта ошибка, потому что я пытаюсь определить отношение один ко многим

foreach ($ data-> proyek as $row2)

Это мой контроллер

public function dtproyek(Request $request) {
    $data = Status::with('proyek')->orderBy('created_at','ASC')->get();

    foreach($data as $row)
    {
        $output .= '<li>'.$row->status.'</li>';

        foreach($data->proyek as $row2)
        {
            $output .= '<li>'.$row->proyek_name.'</li>';
        }

    }
    $data = array(
        'table_data'  => $output,
    );

    echo json_encode($data);
}

1 Ответ

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

неправильный синтаксис используйте это

public function dtproyek(Request $request){
     $data = Status::with('proyek')->orderBy('created_at','ASC')->get(); //here is get that returns multiple collection 
        foreach($data as $row)
            {//here $row is the current $data's collection 
                $output .= '<li>'.$row->status.'</li>';

                foreach($row->proyek as $row2)
                    { //$row2 is collection of $row->proyek 
                        $output .= '<li>'.$row2->proyek_name.'</li>';
                    }

            }
            $data = array(
                'table_data'  => $output,
                );

            echo json_encode($data);
         }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...