我正在尝试使用laravel生成PDF文档,但出现以下错误:
require("application/libraries/Smarty/libs/Smarty.class.php"); // Smarty class Smarty
$smarty = new Smarty();
$smarty->assign('new_var' => $phpvar);
$smarty->display('blabla.tpl');
尝试下载pdf文档时。
我的观点:
Missing required parameters for [Route: assignees.pdf] [URI: assignees/downloadPDF].
我的控制器:
<a href="{{ route('assignees.pdf',$assignees)}}">Download Report as PDF</a>
我的路线:
public function pdf(Assignee $assignees){
$pdf = PDF::loadView('assignees.report', compact('assignees'));
return $pdf->download('invoice.pdf');
}
答案 0 :(得分:0)
您尚未指定任何路线参数,请检查以下内容:
Route::get('{assignee}/downloadPDF','AssigneeController@pdf')->name('assignees.pdf');
上述网址的网址类似于url.com/1/downloadPDF
在刀片服务器中:
(考虑到您已经在$assignee
变量中添加了受让人ID)
<a href="{{ route('assignees.pdf', compact('assignee'))}}">Download Report as PDF</a>
此外,route model binding适用于单个模型实例。因此,您可以传递受让人ID,并且在控制器中输入Assignee $assignees
的类型提示时,Laravel会为您提供该ID的受让人。