使用carrierwave和霧寶石將圖像上傳到S3;當我從localhost:3000執行它時,它工作得很好。但是,在部署到heroku後,當我嘗試上傳圖像時,出現「出錯」屏幕。如果我沒有嘗試上傳圖片而創建相同的帖子,則其他帖子都很好。將霧上傳到本地主機的S3作品,但不能與heroku一起使用
再次,在地方,當我上傳的圖片,它直接到我的S3存儲桶。爲什麼當我從heroku執行相同的操作時不會發生同樣的事情?
我已經做了所有的遷移和推動,我甚至嘗試添加霧-AWS寶石(即使AWS是沒有問題的,Heroku的是)。請幫忙! :(
products_controller.rb
def update
@product.category_id = params[:category_id]
respond_to do |format|
if @product.update(product_params)
format.html { redirect_to @product, notice: 'Product was successfully updated.' }
format.json { render :show, status: :ok, location: @product }
else
format.html { render :edit }
format.json { render json: @product.errors, status: :unprocessable_entity }
end
end
end
這裏是Heroku的日誌,只有錯誤。
2017-02-10T06:21:48.471592+00:00 app[web.1]: I, [2017-02-10T06:21:48.471528 #4] INFO -- : [4cc29852-5ad1-446c-8589-4d67bb97f2cc] Completed 500 Internal Server Error in 614ms (ActiveRecord: 9.3ms)
2017-02-10T06:21:48.472558+00:00 app[web.1]: F, [2017-02-10T06:21:48.472497 #4] FATAL -- : [4cc29852-5ad1-446c-8589-4d67bb97f2cc] Excon::Error::Forbidden (Expected(200) <=> Actual(403 Forbidden)
2017-02-10T06:21:48.472560+00:00 app[web.1]: excon.error.response
2017-02-10T06:21:48.472562+00:00 app[web.1]: :body => "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Error><Code>AllAccessDisabled</Code><Message>All access to this object has been disabled</Message><RequestId>EB063C36E37005DB</RequestId><HostId>6J4nl+P2RoUKEg1D23Fb3dxokR0I5piyBK3/3wYVRmyGzyFxzFseVmTUoZ6GpMFMUiEVQSH2GVA=</HostId></Error>"
順便說一句,我會通宵,積極檢查這一點,所以讓我知道,如果有代碼我應該張貼 – Nick
你能請檢查heroku日誌併發布錯誤 –
您可以在app/controllers/products_controller.rb中發佈'update'行爲代碼嗎 –