Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails中的图像上载不工作_Ruby On Rails_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails rails中的图像上载不工作

Ruby on rails rails中的图像上载不工作,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我需要上传一个图像并将其发送到一个api中,这里不使用数据库。我使用了 此activerecord无法正常工作。 它给出了原始文件名的错误?这就是我用这个的时候得到的 file_param = params[:name] file_name = file_param.original_filename NoMethodError (undefined method `original_filename' for "C:\\fakepath\\logo-big.png":String): 使

我需要上传一个图像并将其发送到一个api中,这里不使用数据库。我使用了
此activerecord无法正常工作。
它给出了原始文件名的错误?这就是我用这个的时候得到的

file_param = params[:name]
file_name = file_param.original_filename  
NoMethodError (undefined method `original_filename' for "C:\\fakepath\\logo-big.png":String):

使用gem
carrierwave
不是一个好主意吗。这是一个很棒的例子。看看吧

更新

如果您的
视图
是这样的:

将控制器代码更改为:

file_name = params[:upload][:file].original_filename

我在上传图片时也遇到了同样的问题

我在后端修改了c://fackpath/filename.*

只需将此项添加到表单中即可解决此问题:

enctype="multipart/form-data"

是的,但这是使用模型,在我的应用程序中,不使用数据库,只需从目录中获取一个文件并发送到一个api,通过带有RestClient::resource的URL我已经更新了答案,请查看。如果未工作,请向您提供
视图
代码。谢谢。查看代码:post,:multipart=>true do%>“photo\u up btn btn success”%>控制器代码文件\u name=params[:upload][:file]。原始文件名show\u url=“……”resource=RestClient::resource.new show\u url,:user=>“admin”,:password=>“admin”resource.post:file=>file.new(文件名“rb”),:multipart=>true现在获取PersonalityController中的错误Errno::enoint#不创建这样的文件或目录-images.jpgokay,你能告诉我你到底想用这个文件做什么吗。你想读取这个文件,然后将其写入应用程序目录的文件吗?我尝试了一种方法,当我使用类似这个文件时,我得到了这个方法参数[:上传]