2012-04-17 10 views
6

私はどのウェブサイトにでもロードできるブックマークレットを持っています。Rails .js.erbファイルの完全なアセットURL

このように動作します。

  • 負荷http://my.example.com/assets/bookmarklet.js
  • http://my.example.com/assets/bookmarklet.css

を含んでcssファイルはbookmarklet.js経由でDOMに追加ので、これがどこにあるか知っておく必要があります。

私のコードは以下の通りです。

// assets/javascripts/bookmarklet.js.erb 

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

しかし、どんなに私は、私は完全なURLを返すようにasset_pathが必要

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

として、これはレンダリングしてみてください何か。 しかし、 asset_urlは存在しません。現在のドメインの先頭にある asset_pathのオプションが見つかりません。

答えて

8

環境ごとに明示的なアセットホストを設定する必要があります。例:

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

これはまさにそれです。ありがとうございます。 –

+0

これには 'asset_path'の' only_path'パラメータが必要ですか? – colllin

+0

@コリンド私は気づいていない - 私はそれを思い出していない。 – Thilo

関連する問題