我在网络表单上有一个链接,它指向文件下载操作。
public function downloadDataAction($data_id)
{
//get data from database and create a zip file ($fzip) with the data
$content = file_get_contents($fzip);
$filename = 'mydata_' . $data_id . '.zip';
$headers = array(
'Content-Type' => 'application/zip',
'Content-Disposition' => "attachment; filename=" . urlencode($filename),
);
return new Response($content, 200, $headers);
}
上述动作按预期工作;当存在具有指定 id 的数据时,将下载 zip 文件,并且原始 Web 表单保持原样,没有任何更改或刷新。当数据库中没有找到数据时,我不知道返回什么响应。理想情况下,我想设置一条 flash 消息,但如果没有刷新,表单上将看不到 flash,如果用户在链接之前创建了任何条目,刷新将破坏用户创建的条目点击。我应该怎么办?