簡體   English   中英

活動存儲/干凈文件的URL

[英]active storage / clean files url

圍繞同一問題的多個問題,即活動存儲返回文件URL的方式

現在,使用默認設置(以下(雲或本地))以某種方式返回以下內容:

_domain/_path/_superlong_hash/_original_filename._ext

給定回形針或許多其他現有的寶石,可以自定義_path / _superlong_hash / _original_filename._ext部分,它可能以任何文件的純凈URL結尾

意思是:

  • 有沒有一種方法可以使用更多自定義內容來“代理” _path
  • 有辦法避免_superlong_hash嗎?
  • 有沒有一種方法可以動態(或上傳)自定義文件名?

為了使它成為一線,如何自定義文件url?

我在這里看到過,那里的人最終創建了自定義控制器來提供具有適當網址的文件,但讓我們承認這是不可行的(IMHO)

我希望ActiveStorage能夠很快證明我錯了,但是在編寫Rails 5.2時,直接的答案似乎是必須使用“ no go”選項,將自己的控制器捆綁在一起,並對ActiveStorage進行大量修補以暴露文件。

有關代理,請參見:

https://github.com/rails/rails/issues/31419

https://github.com/rails/rails/pull/30465

  • 特別是georgeclaghorn的響應很有趣

要重命名文件:

@user.avatar.blob.update(filename: 'NewFilename.jpg')

處理_superlong_hash / url

我對此沒有很好的答案。 盡管ActiveStorage使得上傳(並在某種程度上易於操作)文件非常容易,但是它使Rails持之以恆的軟件哲學走到了邊緣,這使得通過抽象方法來生成URL繞開它的晦澀之處變得相當困難。 ActiveStorage不提供任何內置方法來執行基本操作,例如永久或直接鏈接到生成的文件和變體。 因此,在當前時間點似乎無法通過ActiveStorage開箱即用地完成文件/圖像緩存和漂亮的url。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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