我有一个简单的模型,如下所示:
def video_file=(input_data)
unless input_data.to_s.empty?
newfile = File.open("#{RAILS_ROOT}/public/to_upload/#{self.filename}_vid.f4v", "wb") do |f|
while buff = input_data.read(4096)
f.write(buff)
end
end
end
end
这里是rails设法显示然后死亡的错误,字面意思。
ActiveRecord::StatementInvalid in <ControllerName>
为什么?
答案 0 :(得分:2)
替换
newfile = File.open(path, "wb") do |f|
while buff = input_data.read(4096)
f.write(buff)
end
与
if input_data.respond_to?(:read)
File.open(path, "wb") { |f| f.write(input_data.read) }
end