我正在使用Ruby on Rails 4.1.1,並且想要在電子郵件中添加一個鏈接圖像 - 我的應用徽標 - 但自從我的previous question以來,我有一個疑問。我是否正確地處理「公共」目錄?
通過使用位於public
目錄似乎鏈接到你的資產管道的圖像文件,你可以使用
link_to(LINK_TEXT_OR_IMAGE_TAG_HELPER, image_path(IMAGE_NAME))
但對於那些地處app/assets
似乎不至少在生產模式下呈現的電子郵件消息中使用相同的。 生產中編譯的所有資產都有指紋ID ...是否導致靜態資產加載的指紋不會在電子郵件中呈現圖像?
我懷疑,因爲我想從瀏覽器和電子郵件訪問圖像。我試圖通過將圖像從app/assets/images/logo.png
移動到public/images/logo.png
並將我的application.css.scss
文件中的語句從image-url("logo.png")
更改爲url("/images/logos.png")
來解決該問題。但我不知道我是否遵循「Rails方式」或「最佳實踐」。我呢?我應該在public
目錄中添加我計劃在我的應用程序之外使用的所有資產以及我打算在內部使用我的應用程序的所有資產嗎?
指紋是基於資產的內容。如果您不更改徽標,它應該在部署時保持不變(即可安全地從電子郵件中引用) –
@Sergio Tulentsev - 我試圖從電子郵件中引用位於「app/assets」目錄中的徽標圖像,以及它無法訪問。如果我將圖像放在'public'目錄中(使問題變得正確),那麼圖像就可以訪問。 – user502052
你有'rake assets:precompile'嗎?你是在生產還是在開發模式下運行?生成的鏈接如何查看? – nathanvda