![](/img/trans.png)
[英]Active Storage public_url not returning key/filename.extension
[英]Global error handler for specific case. Undefined method 'public_url'
ruby '2.5.1'
rails '5.1.7'
我的項目是健全的管理。 所有上傳的文件都在雲存儲中 - 聲音/聲音圖像/專輯圖像等。
但是雲存儲上的一些文件不存在。 並查看以下代碼:
.row
- @sounds.each do |sound|
.col-md-2
.play{ "image-src": "#{sound.image.url(:small)}", style: "background: url(#{sound.image.url(:small)});" }
我收到以下錯誤:
ActionView::Template::Error (undefined method `public_url' for nil:NilClass)
項目中有很多這樣的循環( @sounds.each
),所以我不想重寫每一個。
如何為這種情況編寫錯誤處理程序? 因此,如果存儲中沒有文件,則會跳過聲音。
也許有一種方法可以在application_controller.rb
或類似的東西中編寫代碼?
我使用gem 'carrierwave-google-storage'
作為圖像,使用gem 'google-cloud-storage'
作為附件。
似乎在某些情況下會發生錯誤ActionView::Template::Error (undefined method `public_url' for nil:NilClass)
。
查看社區,似乎有一些選項/方法可以修復此錯誤,這取決於您的代碼和應用程序的配置方式。 出於這個原因,我建議您查看以下帖子和答案,以檢查它們是否對您有所幫助。 :)
如果這些信息對您有幫助,請告訴我!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.