Laravel Экспорт в Excel - PullRequest
       7

Laravel Экспорт в Excel

0 голосов
/ 07 апреля 2020

Я хочу иметь возможность экспортировать таблицу в Excel.

Я использую Maatwebsite и пытаюсь использовать метод From View. Однако это дает мне следующую ошибку ..

Неопределенная переменная: trip (Просмотр: C: \ xampp \ htdocs \ basicwebsite \ resources \ views \ share.blade. php)

TripsExport. php

<?php

namespace App\Exports;

use App\Trip;
use App\Events;
use Maatwebsite\Excel\Concerns\FromCollection;
use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;
use Maatwebsite\Excel\Concerns\WithHeadings;

class TripsExport implements FromView
{
    public function  view() : View
    {
      return view('share', [
        'events' => Events::all(),
      ]);
    }
}

share.blade. php

<!DOCTYPE html>
@extends('layouts.app')

@section('content')
<a href="{{route('export', 'xlsx')}}" class="btn btn-primary">Export Itinerary</a>
<table>
    <thead>
    <tr>
        <th>Event Name</th>
        <th>Start Date</th>
        <th>Emd Date</th>
        <th>Time</th>
        <th>Address</th>
        <th>Notes</th>
    </tr>
    </thead>
    <tbody>
    @foreach($trip->events as $event)
        <tr>
            <td>{{ $event->event_name }}</td>
            <td>{{ $event->start_date }}</td>
            <td>{{ $event->end_date }}</td>
            <td>{{ $event->time }}</td>
            <td>{{ $event->address }}</td>
            <td>{{ $event->notes }}</td>
        </tr>
    @endforeach
    </tbody>
</table>

@endsection

TripController. php

public function export($type = 'xls')
    {
      return Excel::download(new TripsExport, 'itinerary.' . $type);
    }

public function share($id)
    {
      //$events = Events::all();
      $trip = Trip::findOrFail($id);
      $trips = Trip::all();
      $events = Events::get();

      return view ('share')->with([
        'events'           => $events,
        'trip'             => $trip
      ]);
    }

маршруты

Route::get('export/{type?}', 'TripController@export')->name('export');
Route::get('/share/{id}', 'TripController@share')->name('trips.share');

Данные отображаются правильно в представлении. Я просто хочу экспортировать это в Excel .

После нажатия кнопки «Экспорт» я получаю сообщение об ошибке ...

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...