你看到file_field提供了一个窗口让用户选择某个文件并上传到服务器端。但我想要的只是文件名。我怎么能只得到文件名,我不需要文件本身。有什么建议吗?
问问题
3093 次
2 回答
5
不知道你为什么需要这个,但你可以试试这个
以你的形式
<%= file_field :uploadfile %>
在你的控制器中
def upload
params[:uploadfile].original_filename
.... process the rest of this method ....
end
“original_filename”将获取正在上传的文件的名称,然后您可以将其存储到数据库中。希望这可以帮助
于 2011-08-14T10:09:13.487 回答
3
你需要有两个字段:
- 存储文件名的隐藏字段
- 文件输入选择文件
前任:
<%= file_field_tag :our_file %>
<%= f.hidden :filename, :id => "hidden_filename" %>
小 jQuery 片段:
$(document).ready(function(){
$('input[type=file]').change(function(e){
filename = $(this).val();
$("#hidden_filename").attr("value", filename);
# To reset file field if you don't want to uppload a file
$(this).attr("value", "");
});
})
于 2011-08-14T10:20:13.347 回答