我有一個動態創建和編譯自視資產Rails應用程序的網域,您訪問的網站(讓說不同的顏色,其中的顏色值存儲在數據庫)如何判斷產生新的公共資源文件的Rails資產
讓的說了www.hello.example
就會產生public/assets/hello-application-52777d36dec6f6e311560156da9da1c2.css
所以瀏覽器的源文件將指向
layout:
= stylesheet_link_tag 'hello-application'
generated html:
<link href="/assets/hello-application-52777d36dec6f6e311560156da9da1c2.css" media="all" rel="stylesheet" />
如果添加www.goodbye.example
它將編譯public/assets/goodbye-application-52777d36dec6f6e311560156da9da1c2.css
所以瀏覽器的源文件將指向
layout:
= stylesheet_link_tag 'goodbye-application'
generated html:
<link data-turbolinks-track="true" href="/assets/goodbye-application-52777d36dec6f6e311560156da9da1c2.css" media="all" rel="stylesheet" />
資產都在運行正確編譯而不需要重新啓動服務器。上述做工精細
例子,如果我重新啓動服務器
我想不通的事情是如何告訴新的公共資源文件生成導軌,使其= stylesheet_link_tag 'goodbye-application'
將它撿起來,而無需重新啓動生產服務器。
我的猜測是,它有事情做,以告訴Rails重新加載public/manifest.json
我只是無法弄清楚
- 的Rails 4.0.2
- 紅寶石2.1
- 獨角獸生產服務器
我的功能有點類似,但是krautcomputing article他與「消化」,這是不是爲軌道4,5工作solwing這個問題(+它不久將被取消)
更新
一個紈絝子弟提供一個答案(他不得不刪除)建議我不必這樣做,因爲獨角獸具有零時間重新啓動,這樣我就可以重新啓動麒麟,它將加載新的公共財產......這是真的,我這樣做是這樣,我已經問過這個問題之前。不過,我正在尋找避免這種情況的解決方案。 (讓用戶說產生每天1000款)
他還建議使用咕嚕...嗯,這是B計劃,我真的不知道是否有一種方法在Rails的鏈輪要做到這一點:)
Rails現在如何做到這一點?您現在使用什麼配置來完成即時生成? – phoet
另外:您應該儘快從rails v4.0.2升級到最新的v4.0版本。 [v4.0.3](http://weblog.rubyonrails.org/2014/2/18/Rails_3_2_17_4_0_3_and_4_1_0_beta2_have_been_released /)引入了多個安全補丁。 – fny
根據將要生成的CSS名稱,如何製作'= stylesheet_link_tag'變量''。 例如,再見一個會有goodbye.css,另一個會有你選擇的名字? – 0bserver07