2012-04-17 28 views
6

Herhangi bir web sitesine yüklenebilen bir bookmarkletim var.Rails dosyasında tam varlık URL'si .js.erb file

Bu şekilde çalışır;

  • yükler http://my.example.com/assets/bookmarklet.js
  • http://my.example.com/assets/bookmarklet.css

css dosyası bookmarklet.js aracılığıyla dom eklenir içerir, bu nedenle bu nerede olduğunu bilmek gerekir.

Kodum aşağıdaki gibidir; Ben tam url dönmek asset_path ihtiyaç

var config = { 
    stylesheetUrl: '/assets/bookmarklet.css' 
} 

olarak

// assets/javascripts/bookmarklet.js.erb 

var config = { 
    stylesheetUrl: '<%= asset_path("bookmarklet.css", :only_path => false) %>' 
} 

Ama ne olursa olsun ben denemek bu ne hale getirir. Ancak asset_url mevcut değil ve geçerli etki alanı başlatacak asset_path için bir seçenek bulamıyorum.

Herhangi bir çözüm?

cevap

8

Her ortam için açık bir varlık ana bilgisayarı ayarlamanız gerekir. Örneğin:

# development.rb 
config.action_controller.asset_host = "http://localhost:3000" 
+0

tam olarak bu, teşekkürler. –

+0

Bu, 'only_path' parametresini' asset_path' için gerektirir mi? – colllin

+0

@collindo Bildiğim kadarıyla değil - Kullanmayı hatırlamıyorum. – Thilo

İlgili konular