Laravel Ajax Возврат не определен в отношениях один ко многим - PullRequest
0 голосов
/ 25 сентября 2018

У меня проблема с использованием ajax на Laravel для каждой информации об отношениях один ко многим.Я пытаюсь использовать ajax, но возвращаю undefined.

Это код, если я использую Laravel foreach

<div id="project-data">
  @foreach ($projectstatus as $project)
        <li>{{$project->status}}</li>

        @foreach($projectstatus->project as $projectlist)
            <li>{{$projectlist->project_name}}</li>
        @endforeach

  @endforeach
</div>

Я пытаюсь использовать jquery для каждого Это мой код

function getDataProyek(){
  $.ajax({
          url: "{{ url('dt.proyek') }}",
          type: "GET",
          dataType: "JSON",
          success : function(data) {
            jQuery.each(data, function(index,project) {
              $('#proyek-data').append('<li>'+project.status+'</li>'+
                   <li>'+project.project.project_name+'</li>');
            });

          }
       });
    }

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

 public function dtproyek()
{
    $projectstatus= Status::with('project')->orderBy('created_at','ASC')->get();
    return $projectstatus;
}

Это JSON Return

 [
    {
    id: "1",
    status: "Waiting",
    created_at: "2018-07-30 12:24:25",
    updated_at: "2018-07-30 12:24:25",
    project: [
    {
         id: "2",
         project_name: "Project 1",
         created_at: "2018-08-11 11:59:51",
         updated_at: "2018-09-24 07:49:38",
    }
    ]
    }
  ]

1 Ответ

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

В JSON результат проекта представляет собой массив, и вы должны использовать индекс для этого в функции getDataProyek или использовать цикл для этого

$('#proyek-data').append('<li>'+project.status+'</li>'+
               '<li>'+project.project[0].project_name+'</li>');

и в вашем контроллере возвращать данные json

return response()->json($projectstatus);

Обновление:

$.each(data, function(index,project) {
    var str='<li>'+project.status+'</li>';

    $.each(project.project, function(key,val) {
         str+='<li>'+val.project_name+'</li>';
    });
    $('#proyek-data').append(str);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...