問題タブ [wisper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - リクエストごとに wisper リスナーを自動的にリロードする
app/listeners ディレクトリにウィスパー リスナーがあります。
/config/initializers/wisper.rb もあります
リクエストごとにRailsにリスナーをリロードさせることはできますか?
ruby-on-rails - wisper-sidekiq でキューを開始しない
wisper-sidekiq gemを使って小さな例を作ろうとしています。キューは作成されますが、開始されません。なんで?あなたが行っている手順を説明します。簡単になると思います。あなたの助けを願っています。
A. コントローラー:
B. サービス:
C. リスナー:
本を保存すると、もちろんキューが作成されます。しかし:
- sidekiq silent (ログは空ですが、キューは作成されました)
- redisもサイレント
たぶん、redis ( redis-server ) または sidekiq ( bundle exec sidekiq ) を開始するのが間違っているのでしょうか? 私を助けてください。
PS bundle exec sidekiq -d -e production sidekiq -q default -C config/sidekiq.ymlを試してみてください。sidekiq.rbが空です。
ruby - Wisper と Grape が POST リクエストから結果を返す
バックグラウンドで Wisper pub/sub を使用する単純な POST Grape エンドポイントがあります。
実際に計算が行われるSomeSub
場所は次のとおりです。
SomePub
も簡単です:
したがって{result: "42"}
、Grape のpost :now
エンドポイントを呼び出すときに JSON で応答する必要があります。
残念ながら、この方法では機能しません。私が持っているものは次のとおりです。
Wisper の wiki の例はあまり役に立ちません ( https://github.com/krisleech/wisper/wiki/Grape )
SomePub#do_calculations
Grape のエンドポイント呼び出しの結果として、実際に結果を渡す方法はありますか?
ruby-on-rails - rails-observers と wisper gem の比較
wisper
gemを使用する利点はありますrails-observers
か?
どちらも一見非常に似ていますが、wisper はコミュニティによってよりサポートされているようです (GH スター、コミット、およびリリースに基づく)。それらの間に大きな違いはありますか?
ruby-on-rails - Railsスプリングウィスパーリスナーメソッドキャッシング
Spring が私の wisper リスナー メソッドをキャッシュしていることがわかりました (私は非常に単純なエンジンを書いています)。
例:
アプリ/モデル/myengine/my_class.rb
config/initializers/wisper.rb
アプリ/オブザーバー/myengine/my_observer.rb
Spring の再起動とspring stop
は、本当に面倒なコマンドの手動実行を意味します。
さらに不思議なことにanother_method
、戻り値を false に変更すると、テストが失敗する可能性がありますが、これは問題ありませんが、after_something
メソッド本体を変更してテストに影響を与えないと (本体が何らかの形でキャッシュされているなど)。return false
after_something
この奇妙な動作はリスナーメソッド本体内でのみ表示され、すべてのロジックをクラス内の別のメソッドに移動することで簡単に克服できるため、優先度の高い問題ではありません。とにかく、混乱するかもしれません (特に、正確な問題を知らなかった最初の段階では)。
ruby-on-rails - Rails Wisper スキップ リスナー コールバック
私は Rails Wisper gem を使用しており、特定のテスト (メール送信をテストする場所) でのみリスナー コールバック (メールを送信する) を実行したいと考えています。他のテストでは、本番環境でコールバックがメールを送信する場合でも、メールを送信したくありません。
ウィスパーで可能ですか?
パブリッシャー(app/models/order.rb)
リスナー/オブザーバー(アプリ/オブザーバー/mailer_order_observer.rb)
サブスクリプション(config/initializers/wisper.rb)
テスト(spec/observers/mailer_order_observer_spec.rb)
上記のテストでは、コールバックを実行したいのですMailerOrderObserver
order_after_save
が、他のテストでは実行したくありません (多くの「注文」が作成され、通常はメール送信をトリガーするものが変更されます)。
RSpec をテスト フレームワークとして使用し、FactoryGirl を使用しています。
もちろんOrder
、FactoryGirl で新しいインスタンスを作成するとメール送信がトリガーされますが、これも望ましくありません。