Есть ли способ сохранить PDF-файл, созданный прямо сейчас, в базу данных в виде файла PDF? - PullRequest
0 голосов
/ 26 июня 2019

Я создал файл счета в формате PDF, который клиент может загрузить. Что я хочу сделать, это сохранить тот же PDF-файл в моей базе данных без необходимости сначала загружать его, а затем загружать снова. Есть ли способ сделать это?

Контроллер:

public function export(){
         $user = Auth::user()['id'];
            $now = Carbon::now()->format('Y-m-d');
            $wherecond = "  userid=".$user." and created_at like '%".$now."%' ";
            $bill = DB::table('cartitems')->select('cartid','category','menu','price','created_at')->whereRaw($wherecond)->orderBy('created_at', 'ASC')->get();

            $whereconditn = "  userid=".$user." and created_at like '%".$now."%' ";
            $cost = DB::table('cartitems')->whereRaw($whereconditn)->sum('price');
            $pdf = PDF::loadView('/pages.bill', ['bill' => $bill, 'cost' => $cost]);
            return $pdf->stream('bill.pdf');
    }

Здесь я создал pdf на blade-сервере bill.blade.php, и пользователь может загрузить файл, но могу ли я сохранить тот же самый PDF-файл непосредственно в базе данных, не загружая его для административной части?

1 Ответ

1 голос
/ 26 июня 2019

Вы можете добавить тип BLOB в вашу базу данных, чтобы сохранить PDF. Но это не лучшая практика из-за необходимого объема памяти.

Я предлагаю вам следующий процесс:

Шаг 1) создайте файл PDF

Шаг 2) сохраните файл PDF на своем веб-сервере

Шаг 3) создайте ссылку (URL) на ваш файл PDF

Шаг 4) сохранить ссылку (URL) в вашей базе данных

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