0
我正在Sinatra網站上允許用戶上傳文件。我得到這個行動路線: Mongo對象的id作爲在Sinatra/Mongoid中的文件上傳的dirname
post '/upload' do
params.delete 'submit'
UsrUpld.new(
:name => params[:name]
:created_at => Time.now
).save
params[:photos].each do |photo|
File.open('public/uploads/' + UsrUpld.id + '/' + photo[:filename], 'w') do |file|
file.write(photo[:tempfile].read)
end
end
redirect '/index'
end
我想這應該建立在MongoDB中的文檔具有兩個字段名和created_at,從POST請求取文件,並在公共/上傳/ ID寫入/ FILE.jpg。但是,Pow返回給我未定義的方法`ID'爲UsrUpld:類。如何用Mongoid在路由中詢問對象的ID?
預先感謝您。
當我試圖上傳文件沒有* UsrUpld.id *它工作正常,並保存/上傳所有文件。此外,我嘗試創建* u *變量與新的* UsrUpld *裏面,這返回相同**未定義的方法'ID'**。 – askhat
哦,我明白了:我要求* id * * UsrUpld.new(#code).save *,而不是* UsrUpld.new *,現在我在做* u = UsrUpld.new *然後* u。保存*,完全如您所指。 – askhat
如果您已經找到問題的答案,請隨時將其發佈爲下面的答案。您可以在第二天左右將其標記爲已接受。 – BoltClock