Ответ 1
send_data
- это рендер, поэтому вы не можете ничего сделать после него в методе контроллера.
Пути вокруг всего включают Javascript. Здесь один из способов, которым я взломал и никогда не любил:
- Пользовательские хиты submit
- появляется небольшое окно и подключается к контроллеру для загрузки файла
- главное окно перенаправляется на следующую страницу
В конце концов я превратил генерацию файлов в фоновое задание. Затем пользователь перешел на страницу заданий (которая не нуждалась в последующей переадресации), чтобы получить файлы.