2012-05-14 127 views
-1

我試圖創建一個圖片上傳的圖片存儲在數據庫中,這裏的DB模式:未定義的方法`original_filename'錯誤?

owner, type, filename, binary_data 

所有字符串類型,除了binary_data,這是二進制類型。

我的文件:

查看

<%= form_tag({:action => "createnew"}, {:mulstipart => true}) %> 
    <%= hidden_field "image", "owner", :value => session[:login] %><br/> 
    <%= text_field "image", "filename", :size => 20 %><br/> 
    <%= file_field "image", "image_file" %><br/> 
<%= submit_tag "Upload" %> 

.RB文件(誤差源)

def image_file=(input_data) 
    self.filename = input_data.original_filename 
    self.type = input_data.content_type.chomp 
    self.binary_data = input_data.read 
end 

控制器

def createnew 
    @image = Image.new(params[:image]) 
    if request.post? 
    @image.save 
    end 
end 

任何人都知道什麼是錯我的代碼?謝謝!

+0

您是否使用'paperclip'作爲附件上傳寶石? – gmile

+1

'mulstipart'中的'{:mulstipart => true}'錯字? – jdoe

+0

@gmile:不,我沒有使用任何寶石,試圖從頭開始。 –

回答

1

你錯上multipart數據。請將您的表單更改爲:

<%= form_tag({:action => "createnew"}, :method => :post, :multipart => true do %>