2012-04-17 44 views
6

Tôi có một bookmarklet có thể tải trên bất kỳ trang web nào.URL nội dung đầy đủ trong tệp Rails .js.erb

Nó hoạt động như thế này;

  • tải http://my.example.com/assets/bookmarklet.js
  • bao gồm http://my.example.com/assets/bookmarklet.css

Các tập tin css được thêm vào dom qua bookmarklet.js, vì vậy nó cần phải biết nơi này là.

Mã của tôi như sau;

// assets/javascripts/bookmarklet.js.erb 

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

Nhưng không có vấn đề gì tôi cố gắng này ám như

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

Tôi cần asset_path để trả về một url đầy đủ. Nhưng asset_url không tồn tại và tôi không thể tìm thấy tùy chọn để asset_path sẽ thêm vào miền hiện tại.

Bất kỳ giải pháp nào?

Trả lời

8

Bạn cần đặt máy chủ lưu trữ nội dung rõ ràng cho từng môi trường. Ví dụ:

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

chính xác là cảm ơn bạn. –

+0

Điều này có yêu cầu tham số 'only_path' thành' asset_path' không? – colllin

+0

@collindo Không phải là tôi biết - tôi không nhớ sử dụng nó. – Thilo

Các vấn đề liên quan