Railsで使えるGem

Rails3.2でリアルタイムメッセージング~Private_pub、Faye

投稿日:

 

Railsで簡単に非同期通信ができるPrivate_pubというgemを試した

もともとrubyにはFayeという非同期通信ができるgemがあったが、簡単に安全な接続ができる実装を加えたのがprivate_subだそうだ

参考

#316 Private Pub @ Railscasts

Gemfile & bundle

bundle

generate

アプリの修正

application.jsに追加

 private_pub.ruに追加(もしなければ)

 config/private_sub.ymlに追加

とりあえずdevelopmentのサーバーアドレスを書き換える

subscribe_to

Fayeサーバを監視したいページに記述?

チャンネルは/から始まる

publish_to

発行したい内容に記述

今回はjs.erbの中でjqueryを発行して動的に書き換えた

 Fayeサーバを起動

Fayeサーバ自体はproduction環境じゃないとエラーを吐く

railsサーバがdevelopmentでFayeサーバがproductionでも当然動いた

 

!!Attention!!

Twitterbootstrap railsを使っている場合、このgemが生成するlayoutファイルはjavascriptを一番最後にロードするように書いてある

これだとうまく動かない

ほかにも色々と動かないものがあったので、headerでjavascriptをロードするように設定する

 

 

-Railsで使えるGem
-, , ,

執筆者:

  • black

    とても参考になる記事ありがとうございます。
    しかしながら、自分の環境ではPrivate_pubのgemがうまく動かない?状況です。

    お手数おかけしますが、サンプルコードをupしてもらえませんか?
    (github, メールなどなんでも構いません。。)

    • seventh

      記事を読んでくれてありがとうございます。

      該当のコードはこれです
      github.com/seventhsense/jaasay

      うまく動くといいですが

関連記事

backbone-relationalをJasmineでテストしてみた

Rails3.2とBackbone.jsでGoogle CalendarライクなカレンダーにCRUD(後編)~fullcalendar-rails

目次1  前回2 UPDATE1~バグの訂正3 UPDATE2 ~ ドラッグとリサイズでデータ更新4 DELETE~イベントの削除5 バグがあった → 解決しました!6  herokuにサンプルアップ …

Deviseのユーザーと既存のMongoidモデルを関連づける

前提 Rails3.2でHTML5で取得した位置情報をMongoDBに保存してGoogleMapsでみる~mongoid、gmaps4rails Rails3.2+Mongoidでログイン機能~dev …

Rails4.0でもajaxなデータテーブルを使う~ajax-datatables

Railsでajaxなテーブルを使う~datatables Rails4でのJSONテンプレート~jbuilder+rabl+ruby 目次1 index.json.jbuilder2 tasks.j …

no image

Rubyでxmlの要素の追加など~nokogiri

目次1 はじめに2 文字列をパースしてxmlとして読み込んでそのままxmlとして出力する3 nodeの追加4 nodesetの作成と追加5 DocumentFragmentの作成と追加 はじめに 参考 …