"Класс 'App \ Http \ Controllers \ InvoicesExport' не найден" в Maatwebsite Laravel - PullRequest
0 голосов
/ 09 мая 2018

В моем проекте Laravel я использую Maatwebsite \ Excel для экспорта данных в формате Excel. я использую новую версию 3.0 (Maatwebsite \ Excel)

App / Exports.php

namespace App\Exports;
use App\Purchasepaymenttransaction;

use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;

class InvoicesExport implements FromView
{
    public function view(): View
    {
            $purchasepayment=Purchasepaymenttransaction::Where('transaction_category',2)->OrderBy('transaction_date','DESC')->get();

        return view('exports.purchasepayments', [
            'purchasepayment' => $purchasepayment
        ]);
    }
}

В моем контроллере платежей

<?php

namespace App\Http\Controllers;
use DB;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Auth;
use Illuminate\Http\Request;
use App\Purchasepaymenttransaction;
use Excel;
use App\Exports;

class PaymentController extends Controller
{

    public function purchaseexport()
        {

            return Excel::download(new InvoicesExport, 'invoices.xlsx');
        }

}

я получил сообщение «Class 'App \ Http \ Controllers \ InvoicesExport' не найден»

1 Ответ

0 голосов
/ 09 мая 2018
return Excel::download(new \InvoicesExport, 'invoices.xlsx');

Обычно вы используете обратную косую черту ('\') перед классом, когда вы получаете исключение, когда класс не найден. Он автоматически найдет этот класс из вашего кода и использует его там, где вам нужно, и не требует его использования вверху файла. Это похоже на

use [YOUR_PATH]/InvoicesExport

Если вы используете оператор «use», то нет необходимости использовать обратную косую черту ('\'). Вы можете использовать любой из двух выше. Это будет работать.

...