###前提・実現したいこと
簡単なSNSサービスのようなものを作成しています。
アイコン画像データの保存でつまづきました。
###発生している問題・エラーメッセージ
**Errno::ENOENT in CategoriesController#update** No such file or directory @ rb_sysopen - public/category_image/7.jpg
###該当のソースコード
ruby
1def update 2 @category = Category.find_by(id: params[:id]) 3 @category.name = params[:name] 4 @category.password = params[:password] 5 if params[:image] 6 @category.image_name = "#{@category.id}.jpg" 7 image = params[:image] 8 IO.binwrite("public/category_image/#{@category.image_name}", image.read) 9 end 10 if @category.save 11 @category.save 12 flash[:notice] = "Update Successfull!" 13 redirect_to("/categories/#{@category.id}") 14 else 15 render("/categories/edit") 16 end 17 end
###試したこと
https://docs.ruby-lang.org/ja/latest/class/IO.html
を参考にIO.writeやIO.binwriteとしましたが何も変わりません。
-- File.write, File.binwriteもだめです。
###補足情報(言語/FW/ツール等のバージョンなど)
Ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
rails -v
Rails 5.1.4
Vagrant
VirtualMachin
CentOS
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。