Как экспортировать лезвие Laravel в документ Word - PullRequest
0 голосов
/ 14 апреля 2019

Я хочу добавить функцию экспорта в слово для одного из моих блейдов в Laravel.Я использовал этот пакет.

composer require phpoffice/phpword

Мой контроллер, включая функцию экспорта в текстовые слова ниже.Когда пользователь вставляет obj_id в блэйд-форму, контроллер получает имя и фамилию из таблицы hrp1702.Экспорт в слово происходит внутри контроллера.Однако я хочу добавить эту функциональность к лезвию.Это возможно?

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

public function work(Request $bb)
    {


        $cc = $bb -> get('obj_id');


        $m = DB::table('hrp1702') -> where('object_id', $cc)->value('first_name');
        $n = DB::table('hrp1702') -> where('object_id', $cc)->value('last_name');



        $wordTest = new \PhpOffice\PhpWord\PhpWord();
        $newSection = $wordTest->addSection();

        $newSection->addText('FIRST NAME: '.$m);
        $newSection->addText('LAST NAME: '.$n);

        $objectWriter = \PhpOffice\PhpWord\IOFactory::createWriter($wordTest, 'Word2007');
        try 
        {
            $objectWriter->save(storage_path('TestWordFile.docx'));
        } 
        catch (Exception $e) 
        {
        }

        return response()->download(storage_path('TestWordFile.docx'));


    }

}       

Ниже вы можете увидеть лезвие, которое я хочу экспортировать в слово.Это очень простой клинок, который берет кулак и фамилию из таблицы БД.Я хочу добавить к кнопке внизу, что экспорт в слово при нажатии.Не внутри контроллера.Не могли бы вы помочь, пожалуйста?

<!DOCTYPE html>

<html lang="el">
<head>
    <meta charset="UTF-8">
    <title>Full Name</title>
</head>
<body>

First Name: <b> {{ $onoma }}</b><br>
Last Name: <b> {{ $epitheto }}</b><br>

<form method="post" action='/exagogi1'>


    <input type="submit" value="Export to Word" />
</form>



</body>
</html>
...