undefined方法`original_filename'ERROR?

时间:2012-05-14 07:31:20

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1

我正在尝试创建一个图像上传器,将图片存储在数据库中,这里是db schema:

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

有人知道我的代码有什么问题吗?谢谢!

1 个答案:

答案 0 :(得分:1)

你错误地使用了multipart数据。请将您的表单更改为:

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