Carrierwaveを使用して単一の画像をアップロードしたいのですが、ファイルをアップロードしてアップロードディレクトリに保存します。このフォルダにtmpという別のフォルダを作成し、tmpフォルダに画像を含む別のフォルダを作成します。 。問題は、画像がそのフォルダに完全にアップロードされていても、アップロード、アップロード、アップロードが常に停止しているようには見えず、この画像をすでにfeh(または他の画像ビューア)で開くことができるということです。
これは私のコントローラーがどのように見えるかです。
get "/new" do
protect!
erb :new
end
post "/new" do
protect!
@user = User.get(session[:user_id])
image = @user.image.new(
:description => params[:description],
:image => params[:image]
)
# image.save
"NEVER REACHED!"
end
(「NEVERREACHED!」というテキストはまったく表示されず、理由はわかりません...)
これは私のモデルです:
class ImageUploader < CarrierWave::Uploader::Base
def extensions_white_list
%w(jpg jpeg gif png)
end
storage :file
end
class Image
include DataMapper::Resource
property :id, Serial
property :description, Text
property :image, String, :auto_validation => false
mount_uploader :image, ImageUploader
end
class User
include DataMapper::Resource
property :id, Serial
has n, :post
end
したがって、すでに述べたように、「NEVERREACHED」というテキストには到達しません。なぜアイデアはありますか?
その上、私はいつも警告を受けます:
Defining property for an uploader is deprecated at /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
そして私はなぜだか分からない...
更新:メインコントローラーでimage.saveのコメントを解除しない限り、これはどういうわけか機能していますが、実際にはコメントを解除する必要があります。これを修正する方法はありますか?