2017-02-21 45 views
0

我有一個表格,用戶必須填寫。按下提交後,用戶將被重定向到名爲/ drugs/result的頁面,並提供成功消息和.PDF的下載按鈕。我無法弄清楚如何在下載頁面下載pdf。如果我在控制器中使用pdf方法,它工作正常。在Laravel成功插入表單後在下一頁下載.PDF

我用這對PDF:barryvdh/laravel-dompdf

我有什麼:

public function store(StoreConfirmationRequest $request) { 
    $formData = $request->all(); 

    $prescription_confirmation = new Prescription_confirmations; 
    $prescription_confirmation->physician_id = Input::get('physician_id'); 
    $prescription_confirmation->patient_code = Input::get('patient_code'); 
    $prescription_confirmation->medicine = 1; 
    $prescription_confirmation->date = Input::get('physician_date'); 

    //finally save the data to database 
    $prescription_confirmation->save(); 

    $pdf = App::make('dompdf.wrapper'); 
    $pdf->loadHTML('<h1>Test</h1>'); 
    $pdf->download(); 

    return view('medicines.result', compact('formData'))->with('message', 'Successfully inserted); 
} 

這裏是刀片

@extends ('layouts/master') 

    @section('title', 'Allalaadimine') 

     @section ('content') 
     <div class="container medicine_confirmation_container"> 
      <div class="col-md-12"> 
      @foreach ($formData as $data) 
       <li>{{$data}}</li> 
      @endforeach 
      <div class="flash-message"> 
       @if(session()->has('message')) 
        <div class="alert-message alert-message-success"> 
        <h4>Saved!</h4> 
         {{ session()->get('message') }} 
        </div> 
       @endif 
      </div> <!-- end .flash-message --> 
      <button class="btn btn-borders btn-success btn-lg btnDownloadPdf" type="submit">Lae alla pdf</button> 
      </div> 
     </div> 
     @endsection 

     @section ('footer') 
     @endsection 

回答

0

返回兩個PDF和視圖將無法正常工作。您必須將PDF保存到您的服務器上,並使其可以通過其他路徑進行下載。

來源:https://github.com/barryvdh/laravel-dompdf

$pdf->save('/path-to/my_stored_file.pdf'); 

在您必須連結保存的PDF刀片模板。

+0

這將是真正沉重的服務器? – raqulka

+0

您也可以通過單獨的路線按要求生成PDF。在這種情況下,您不必存儲文件。 – Plxx