1

ジスト:

私は、<script type="text/javascript">RubyからJavascriptへの静的な(Railsがクライアントにページを配信した後は変更されない)文字列にアクセスしたいと考えています。

詳細(別名:なぜやりたいのか)

私はJuggernautと呼ばれるプッシュサーバーを使用しており、コントローラーの変数によって決定される適切な「チャネル」に接続する必要があります。Juggernautサーバーを「リッスン」するためのJuggernaut構文は次のとおりです。

j.subscribe("channel", function(data) { })

私はそれをしたい:

j.subscribe(<%= @myChannel %>, function(data) { })
4

2 に答える 2

4

ほとんどの場合、には「」@myChannelが含まれていません。

次を使用する必要があります。

j.subscribe("<%= @myChannel %>", function(data) { })
于 2011-09-22T02:05:08.607 に答える
2

別のアイデアは、ルビーコードを.jsファイルに埋め込むのではなく、ビュー自体に埋め込むことです。

したがって、あなたの見解では、javascript変数を設定するか、channelHTML要素の属性として「channel」を追加します。どちらかがあなたの場合により自然です。次に、アプリケーションのJavaScriptで、ドキュメントの準備ができたらその変数にアクセスできます。

これには、チャネルが変更された場合にクライアントがjavascriptを再ダウンロードする必要がなく、代わりにキャッシュから使用し続けることができ、レールが毎回.jsをレンダリングする必要がないという副次的な利点があります。

于 2011-09-22T03:13:38.253 に答える