簡體   English   中英

特定情況的全局錯誤處理程序。 未定義的方法“public_url”

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM