作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以,我正在尝试创建一个小型图像发布博客,有点像 tumblr,但仅用于辛普森一家的图像(用于类)。
我正在尝试使用 Sinatra 直接上传到 Postgres 数据库,我可以获得连接并添加内容,但添加每个细节,而不仅仅是图像。我得到了这个垃圾:
"image/png", :name=>"file", :tempfile=>#, :head=>"Content- Disposition: form-data; name=\"file\"; filename=\"Homer_Simpson_4.png\"\r\nContent-Type: image/png\r\n"}" alt="">
图像应显示的位置。
我认为它与转换图像以使其可读有关。二进制数据?我只想将图像存储在数据库中,并可能重命名它以便于保存。
这是我的上传路径
post '/upload' do
@post = Post.new
@post.content = params[:file]
@post.user_id = current_user.id
@post.save
unless params[:file] &&
(tmpfile = params[:file][:tempfile]) &&
(name = params[:file][:filename])
@error = "No file selected"
return erb :submit
end
STDERR.puts "Uploading file, original name #{name.inspect}"
while blk = tmpfile.read(65536)
# here you would write it to its final location
STDERR.puts blk.inspect
end
"Upload complete"
redirect to '/'
end
我从 ruby-forum 获得了这段代码,它做了我认为它会做的所有事情,并让我返回,甚至做了一些存储。
这是我的表格:
<form action="/upload" method="post" enctype="multipart/form-data">
<label for="">Upload an Image</label>
<input type="file" name="file" />
<button>Submit</button>
</form>
我有一个帖子数据库模型(事件记录),列只是帖子的 ID、内容和发帖人的 user_id。
我以前从未尝试过任何类型的 uploader ,所以我对文件上传的存储方式感到非常困惑。我需要一个新的图像列吗?或者一张 table ?
抱歉,如果这是一个问题,我正在努力研究我的 Stack Overflow 功能(事实证明它是开发的一个非常重要的部分,连同谷歌搜索)。
最佳答案
你真的应该看看refile或 carrierwave两者都是由优秀的开发人员编写的,使工作变得非常简单。真的,不要尝试存储在数据库中,你绝对不能存储在 Heroku 上。
关于ruby - 使用 Sinatra 上传图片到 Postgres,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35006214/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!