問題タブ [mailboxer]

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.

0 投票する
1 に答える
717 参照

ruby-on-rails - Mailboxer Gem、管理者ビュー

アプリのユーザー モデル間の会話/メッセージにメールボックス ジェムを使用しています。スタック オーバーフローの大きな助けのおかげで、これはすべて正常に機能しています。管理者が発生しているすべての会話を表示できるように、セクションを設定しようとしています。

管理セクションにネストされた、会話用のコントローラーとビューを作成しました。インデックスページのすべての会話を次のように取り込みました。

これにより、期待どおり、すべての会話と、各会話を表示するためのリンクが一覧表示されました。

私が抱えている問題は、メールボックスの Gem が、current_user が参加している会話のみを current_user が表示できるように設定されていることです。そのため、会話の一部をクリックして (署名は管理者として)、コンテンツを表示できます。しかし、一部 (他のテスト ユーザー間) は表示されません。つまり、次のような例外がスローされます。

管理者がすべてを見ることができるように、管理者コントローラーでメソッドを定義するにはどうすればよいですか?

私は現在 cancan を使用しており、次のように 3 つのユーザー ロール (管理者、クライアント、サプライヤー) をすべて許可しています。

...だから、それは通常の承認の問題ではありません。

これが私の会話コントローラーです:

答えはおそらくかなりばかげたものですが、私はこれに慣れていません...

ありがとう

0 投票する
1 に答える
1132 参照

ruby-on-rails - Mailboxer : 特定の会話を表示するには?

進行中の会話のリストを各ユーザーに表示したいと考えています。そのため、クリックするだけで、必要な会話を表示できます。メールボックスの会話オブジェクトには ID がないため、このリンクの作成方法がわかりません。

このIDは通知オブジェクトに格納されているようですので、このオプションを試してみました。

このコードは、会話インデックス ビューからのものです。

@conversation_id インスタンス変数は、会話コントローラーで定義されています

機能していません。すべてのリンクが id = 1 の会話につながっています。

0 投票する
1 に答える
2240 参照

ruby-on-rails-4 - Rails 4チュートリアルを使用したメールボクサー

Rails 4 でメールボックスを使用するためのチュートリアルはありますか? または、誰かが私と共有できるコードを持っていますか。私は少し初心者だと思いますが、例を含むドキュメントでも、何らかのチュートリアルが本当に必要だと感じています。

0 投票する
2 に答える
366 参照

ruby-on-rails - メールボックスの is_read を更新する方法がわかりません

私はメールボックスの gem を使用しており、(conversations#show にアクセスして) 会話を見た後、レシートの is_read 属性を true にするようにしようとしています。ただし、応答を送信するまで、属性は true になりません。次の行を使用してみました:

しかし、次のエラーが返されました:

私はエラーを理解していると思います。属性は読み取りのみ可能で、更新はできないと言っていると思います。私の質問は、conversation#show ページに移動した場合に is_Read が true になるように機能を実装するにはどうすればよいですか?

0 投票する
1 に答える
35 参照

ruby-on-rails - 呼び出されていないときにロードされるデータベースからのレコード

これがメールボックスのgemに関係しているのか、それともレールの深いところにあるのかはわかりません。リンクをクリックするたびに、メッセージ テーブル、会話テーブル、領収書テーブルのすべてのレコードが読み込まれます。これは、ページがメールボックスと関係がない場合でも発生します。これがなぜなのか、どうすれば修正できるのか誰か知っていますか?

たとえば、どのページに移動しても、サーバー ログには常に次のように表示されます。

Active Record、Postgres、Rails 4 を使用しています。

0 投票する
1 に答える
523 参照

ruby-on-rails - Mailboxer/Rails: 'sender=' の未定義のメソッド

私はこの問題に1日半悩まされてきました。私は Mailboxer gem を使用して、非常に単純なメッセージング システムを作成しています。サンプルと同じもの - https://github.com/RKushnir/mailboxer-app - この宝石から始めましょう。

私は文字通り、両方のリポジトリをコンピューター上で隣り合わせに配置しています。メールボックス固有のモデル、移行、初期化子、私が見つけることができるすべて。nameこれには、アクションを含む User モデルが含まれます。Notificationでモデルをいじってみましたattr_accessible

データベースは同一です。

サンプル アプリで会話を保存した後、コンソール/シードでメッセージを作成しようとすると、非常に簡単です。会話が保存されたら、次を実行します。

そしてブーム。美しく機能します。一方、私のアプリは同じように機能します。畑に着くまでsender

送信者を設定しようとすると:

n.sender = User.find(1)

次のエラーが表示されます。NoMethodError: undefined method 'sender=' for #<Message:0x00000101708eb8>

どうして??

これは私を夢中にさせています。誰かが助けを貸してくれるなら、本当に感謝しています。前もって感謝します。

メッセージ/通知スキーマ:

これは gem が生成するもので、サンプル アプリと同じです。

0 投票する
1 に答える
390 参照

ruby-on-rails - NoMethodError 未定義のメソッド「参加者」

メールボックスの gem をセットアップしましたが、/conversations にアクセスするとundefined method参加者が表示されます' ` エラーはインデックス付きの Conversations コントローラーを指しています。ユーザーのすべての受信トレイ メッセージを格納するインデックス アクションに、会話インスタンス変数を追加しました。

誰かが私の定義のどこが間違っていたかを見つけることができますか?

会話コントローラー:

ルート:

0 投票する
1 に答える
360 参照

ruby-on-rails - エラー「応答」アクションがコントローラーに見つかりませんが、ファイルに存在します

メールボックスの宝石を使用して、会話コントローラーで定義された返信アクションを持っていますが、メッセージに返信すると、アクションが見つからないと表示されます。エラーが発生しますAbstractController::ActionNotFound at /conversations/2/reply The action "reply" could not be found for ConversationsController

サーバーを再起動しましたが、同じエラーが表示されます。

会話コントローラー:

返信フォーム ビュー:

ルート: