2012-04-29 6 views
0

私は多くを検索しました。私はコントローラにメソッドを作成し、このエラーに enter image description hereCarrierwaveを使用してファイルをアップロードするときにnilは記号ではありません

に直面しています は

ですDEF @category = Category.new(のparams [:カテゴリ])を作成する私のフォームは

ある

respond_to do |format| 
    if @category.save 
    format.html { redirect_to @category, notice: 'Category was successfully created.' } 
    format.json { render json: @category, status: :created, location: @category } 
    else 
    format.html { render action: "new" } 
    format.json { render json: @category.errors, status: :unprocessable_entity } 
    end 
end 
end 

<%= form_for @category, :html => { :multipart => true } do |f| %> 
<% if @category.errors.any? %> 
<div id="error_explanation"> 
    <h2><%= pluralize(@category.errors.count, "error") %> prohibited this category from being saved:</h2> 

    <ul> 
    <% @category.errors.full_messages.each do |msg| %> 
    <li><%= msg %></li> 
    <% end %> 
    </ul> 
    </div> 
    <% end %> 

<div class="field"> 
    <%= f.label :name %><br /> 
    <%= f.text_field :name %> 
</div> 
<div class="field"> 
    <%= f.label :description %><br /> 
    <%= f.text_area :description%> 
</div> 

<div class="field"> 
    <%= f.file_field :image %> 
</div> 

<div class="actions"> 
    <%= f.submit %> 
</div> 
<% end %> 

アップロードするファイルを選択して[送信]ボタンをクリックすると、処理が進まない

私のアップローダが

# encoding: utf-8 
require 'carrierwave/processing/rmagick' 
class ImageUploader < CarrierWave::Uploader::Base 

#Include RMagick or MiniMagick support 
include CarrierWave::RMagick 

# Choose what kind of storage to use for this uploader: 
storage :file 

# This is a sensible default for uploaders that are meant to be mounted: 
def store_dir 
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" 
end 

def scale(width, height) 
# do something 
end 

# Create different versions of your uploaded files: 
    version :thumb do 
    process :resize_to_fill => [80, 80] 
    end 

end 
+0

CarrierWaveアップローダークラス(image属性をマウントしたクラス)に問題がある可能性があります。アップローダーのコードを貼り付けると役立ちます。 – Cloudinary

+0

返信ありがとうございます、私はアップローダを追加しました、plzは私が間違っている場所を案内します – ALi

+0

あなたのアップローダが正しいようです。私たちは実際に私たちのプロジェクトで試してみましたが、うまくいきました。取得するエラーは、実行するプロセッサが(resize_to_fillではなく)nilであることを意味します。あなたが貼り付けたコードが問題を引き起こしている関連アップローダのものですか? – Cloudinary

答えて

0

である私は、新しいプロジェクトを作成している、同じ方法とその作業中にすべてのものを適用し、このエラーが発生した原因はまだ分からないが、今、私は何の問題もありません。

関連する問題