8

サブスクライブしているクライアントに通知をユーザーにプッシュするためにprivate_pubを使用しています。私のapplication.html.hamlには、次のものがあります。

...
= javascript_include_tag 'application'
= subscribe_to "/#{@user.access_token}/notifications"
...

subscribe_toヘルパーは、開発で正常に機能します。本番環境にデプロイすると、次のエラーがログに記録されます。

ActionView::Template::Error (undefined method `subscribe_to' for #<#<Class:0x00000001f372e8>:0x00000001fded90>):
    5:     = stylesheet_link_tag 'application', :media => 'all'
    6:     = include_gon(:init => true)
    7:     = javascript_include_tag 'application'
    8:     = subscribe_to "/#{@user.access_token}/notifications"
    9:     = csrf_meta_tags
    10: 
    11:   %body
  app/views/layouts/application.html.haml:8:in `_app_views_layouts_application_html_haml__1867651381877570337_14592040'

実稼働環境でこのヘルパーメソッドにアクセスするにはどうすればよいですか?

4

2 に答える 2

3

これは、PrivatePubエンジンのロードに関するエラーのように見えます。engine.rbを見ると、initの一部としてPrivatePubビューヘルパーが追加されていることがわかります。開発用にロードされているが、実稼働環境ではロードされていない場合は、バグである可能性があります。

PrivatePubヘルパーを手動でロードするconfig/initializersを作成してみてください。

require 'private_pub/view_helpers'
ActionView::Base.send :include, PrivatePub::ViewHelpers
于 2012-08-10T17:53:52.713 に答える
0

デプロイスクリプトはFayeのラックアップファイルを開始していますか?ラックアップprivate_pub.ru-sthin-Eプロダクション

于 2012-08-05T05:53:30.327 に答える