2012-05-14 143 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 %>