当用户输入否时,我有一个搜索框,它返回特定的学生结果。我想生成该搜索数据的PDF,该数据在表中。
主要问题:我想为已搜索其数据的学生结果生成PDF,那么如何为该当前学生结果生成PDF。
打印/ PDF生成器按钮:
<a href="{!! url('/getPDF') !!}">Print</a>
PDFController:
class PDFController extends Controller
{
public function getPDF(Request $request){
// I want some code here to get the current student result so that I can generate pdf for the current student
$pdf = PDF::loadView('results.single');
return $pdf->stream('result.pdf');
}
}
SearchController:
class ResultsSearchController extends Controller
{
public function search()
{
$keyword = Input::get('keyword');
$row = Student::where('rollno',$keyword)->first();
$rollno = $row['rollno'];
if($keyword == $rollno){
return View::make('results.single')
->with('search',Student::where('rollno',$keyword)
->get())->with('keyword',$keyword);
}else{
return view('errors.404');
}
}
}
Routes.php:
Route::get('/getPDF', 'PDFController@getPDF');
PS:我正在使用https://github.com/barryvdh/laravel-dompdf
最佳答案
试试这个
首先将路线更改为
Route::get('/getPDF/{id}', 'yourController@getPDF');
像这样将搜索到的学生
id
从单一视图传递到PDF视图<a href="{!! url('/getPDF', $student->id) !!}"> Print</a>
在您的PDF控制器中
public function getPDF(Request $request,$id){
$student = Student::findOrFail($id);
$pdf = PDF::loadView('pdf.result',['student' => $student]);
return $pdf->stream('result.pdf', array('Attachment'=>0));
}
并在您的视图中获得对象
{!! $student->property !!}
关于php - 如何从事件的View Laravel生成PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38415939/