Php 如何使视图响应可下载?
我有一个从模板呈现的XML文件 守则:Php 如何使视图响应可下载?,php,laravel,laravel-5,Php,Laravel,Laravel 5,我有一个从模板呈现的XML文件 守则: public function createXml($id) { $order = Order::with('orderLines.bike.gallery')->with('orderLines.product')->with('orderLines.accu')->find($id); $debtor = User::find($order->user_id); return response()-&g
public function createXml($id)
{
$order = Order::with('orderLines.bike.gallery')->with('orderLines.product')->with('orderLines.accu')->find($id);
$debtor = User::find($order->user_id);
return response()->view('ordersxml.order-template',compact('order','debtor'))->header('Content-Type','text/xml');
}
我希望人们自动下载.xml文件。我该怎么做?我需要把它存起来让它工作吗?现在,它只返回视图。在将响应发送给用户之前设置此标题,然后重试:
内容配置:附件;filename=“yourfilename.xml”
此标题将强制浏览器下载您的xml。
祝你好运。而不是
return response()->view('ordersxml.order-template',compact('order','debtor'))->header('Content-Type','text/xml');
尝试:
是的,您需要将其保存以使其工作,因为上述函数中需要路径
return response()->download($pathToFile);
return response()->download($pathToFile, $name, $headers);
return response()->download($pathToFile)->deleteFileAfterSend(true);