我正在尝试复制以前录制的音频,并将其保存到tmp文件夹中。
我的问题是,如何将该文件传递到视图中的audio_tag帮助器?我可以建立临时资产还是类似的东西?
控制器:
def confirm_audio_legal
@audio = "#{Constants::TEMP_FOLDER}/#{params[:filename]}"
render layout: false
end
查看:
<p>Bla bla bla</p>
<audio src="<%=@audio%>" controls>
<br>
谢谢。
我回应自己。只需添加一个用于发送音频文件的控制器,如下所示:
页面控制器:
def confirm_audio_legal
@audio = "tmp_audio/#{params[:filename]}"
render layout: false
end
提供文件的控制器:
class AudioSenderController < ActionController::Base
def send_audio
# Add some security
audio = File.open("#{Constants::TEMP_FOLDER}/#{params[:filename]}")
send_file audio
end
end
路线:
get 'tmp_audio/:filename', to: 'audio_sender#send_audio'