0
请帮忙使用形式解决问题如何下载文件并获取其名称?
我上传文件:
<%= form_for(@video) do |f| %>
<%= f.text_field :title %>
<%= f.file_field :video %>
<%= f.submit %>
<% end %>
控制器:
def create
p '============'
p params[:video][:title]
p params[:video][:video]
p params[:video][:original_filename]
p params.inspect
redirect_to root_url
end
def video_params
params.require(:video).permit(:title, :video, :original_filename)
end
我需要带控制台:
p params[:video][:original_filename]
但控制台不会显示original_filename:
Started POST "/videos" for 127.0.0.1 at 2015-07-19 14:27:19 +0300
Processing by VideosController#create as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"FZASvIyDWQvwqP/P8DewOdViRooE01cEGs8JsjZKweagcvfCiL+wfKCyAfYaW0Id8y/KkX1oAMYpP3uWCM0n9A==", "video"=>{"title"=>"ррррр", "video"=>#<ActionDispatch::Http::UploadedFile:0x007f04d821d318 @tempfile=#<Tempfile:/tmp/RackMultipart20150719-29849-pkn4g3.mp4>, @original_filename="mmm.mp4", @content_type="video/mp4", @headers="Content-Disposition: form-data; name=\"video[video]\"; filename=\"mmm.mp4\"\r\nContent-Type: video/mp4\r\n">}, "commit"=>"Create Video"}
"============"
"ррррр"
#<ActionDispatch::Http::UploadedFile:0x007f04d821d318 @tempfile=#<Tempfile:/tmp/RackMultipart20150719-29849-pkn4g3.mp4>, @original_filename="mmm.mp4", @content_type="video/mp4", @headers="Content-Disposition: form-data; name=\"video[video]\"; filename=\"mmm.mp4\"\r\nContent-Type: video/mp4\r\n">
nil
在控制台输出如下消息:NoMethodError(未定义的方法'#为original_filename”): –
stackov8
我认为有视频PARAMS内的视频。请做这个p params [:video] [:video] .original_filename – Athar
更新了我的答案。 – Athar