КАК СТАНОВИТЬ ДАННЫЕ ИЗ API - PullRequest
0 голосов
/ 29 января 2020

Мне удалось получить определенные данные раньше, но когда я попытался добавить больше кода для разбивки на страницы. Это больше не работает. Мне нужно разбить данные на страницы из API

ошибка: «Попытка получить свойство« имя »необъекта».

Это результат, если I

если я dd ($ response), то результаты будут такими:


    {#274 ▼
      +"pagelen": 10
      +"next": "https://bitbucket.org/!api/2.0/repositories/spycetek?page=2"
      +"values": array:10 [▶]
      +"page": 1
      +"size": 59
    }

// Я должен разбить это на страницы. Вот мой код для контроллера.


    public function index(Request $request, $page = 1)
    {

        $request = $this->client->get("https://bitbucket.org/!api/2.0/repositories/{$this->username}?page=" . $page,
            [
                'headers' => ['Authorization' => 'Bearer ' . $this->token]
            ]);
        $response = json_decode($request->getBody()->getContents());
        $repositories = $response->values;

        $pagination = $response->pagelen;
        $has_next_page = $pagination['has_next_page'];
        $current_page = $pagination['page'];
        $has_previous_page = $pagination['previous'];
        $next_page = $pagination['next'];


        return view('bitbuckets.repository')->with(compact('repositories'),
            [ 'has_next_page' => $has_next_page,
                'current_page' => $current_page, 'has_previous_page' => $has_previous_page,
                'next_page' => $next_page]);
    }
**//this is my blade.php file**

    @extends('layoutss.layout')
    @section('content')
        <div class="container">
            <div class="row" id="load" style="position: relative;">
                <table class="table table-hover">
                    <thead>
                    <tr>
                        <th scope="col" class="text-secondary">Repositories</th>
                    </tr>
                    </thead>
                    <tbody>

                    @foreach($repositories as $key => $repository)

                        <tr>
                            <td>
                                <a href="{{route('pull_request', ['name'=>$repository->name, 'state'=>'OPEN'])}}">{{$repository->name }}</a>
                            </td>
                        </tr>
                        @if(isset($current_page))
                            <?php
                            $prev = $current_page - 1;
                            ?>
                            @if(($has_next_page == true) && ($has_previous_page == false))
                                <li><a href="{{url('/'.$next_page)}}">Next</a></li>
                            @elseif(($has_next_page == false) && ($has_previous_page == true))
                                <li><a href="{{url('/'.$prev)}}">Previous</a></li>
                            @elseif(($has_next_page == true) && ($has_previous_page == true))
                                <li><a href="{{url('/'.$prev)}}">Previous</a></li>
                                <li><a href="{{url('/'.$next_page)}}">Next</a></li>
                            @endif
                        @endif
                       {{$repositories->links()}}
                    @endforeach

                    </tbody>
                </table>
            </div>

        </div>
    @endsection

, и это мой код для маршрутов.

    Route::get('/{page?}', 'bb@index');

что не так с моими кодами, я запутался, когда дело доходит до нумерации страниц. в клинке. php пытался отобразить список всех репозиториев, и я хотел разбить их на страницы. Но я не мог из-за ошибки.

...