問題タブ [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.
ruby-on-rails - Mailboxer Gem、管理者ビュー
アプリのユーザー モデル間の会話/メッセージにメールボックス ジェムを使用しています。スタック オーバーフローの大きな助けのおかげで、これはすべて正常に機能しています。管理者が発生しているすべての会話を表示できるように、セクションを設定しようとしています。
管理セクションにネストされた、会話用のコントローラーとビューを作成しました。インデックスページのすべての会話を次のように取り込みました。
これにより、期待どおり、すべての会話と、各会話を表示するためのリンクが一覧表示されました。
私が抱えている問題は、メールボックスの Gem が、current_user が参加している会話のみを current_user が表示できるように設定されていることです。そのため、会話の一部をクリックして (署名は管理者として)、コンテンツを表示できます。しかし、一部 (他のテスト ユーザー間) は表示されません。つまり、次のような例外がスローされます。
管理者がすべてを見ることができるように、管理者コントローラーでメソッドを定義するにはどうすればよいですか?
私は現在 cancan を使用しており、次のように 3 つのユーザー ロール (管理者、クライアント、サプライヤー) をすべて許可しています。
...だから、それは通常の承認の問題ではありません。
これが私の会話コントローラーです:
答えはおそらくかなりばかげたものですが、私はこれに慣れていません...
ありがとう
ruby-on-rails - Mailboxer : 特定の会話を表示するには?
進行中の会話のリストを各ユーザーに表示したいと考えています。そのため、クリックするだけで、必要な会話を表示できます。メールボックスの会話オブジェクトには ID がないため、このリンクの作成方法がわかりません。
このIDは通知オブジェクトに格納されているようですので、このオプションを試してみました。
このコードは、会話インデックス ビューからのものです。
@conversation_id インスタンス変数は、会話コントローラーで定義されています
機能していません。すべてのリンクが id = 1 の会話につながっています。
ruby-on-rails-4 - Rails 4チュートリアルを使用したメールボクサー
Rails 4 でメールボックスを使用するためのチュートリアルはありますか? または、誰かが私と共有できるコードを持っていますか。私は少し初心者だと思いますが、例を含むドキュメントでも、何らかのチュートリアルが本当に必要だと感じています。
ruby-on-rails - メールボックスの is_read を更新する方法がわかりません
私はメールボックスの gem を使用しており、(conversations#show にアクセスして) 会話を見た後、レシートの is_read 属性を true にするようにしようとしています。ただし、応答を送信するまで、属性は true になりません。次の行を使用してみました:
しかし、次のエラーが返されました:
私はエラーを理解していると思います。属性は読み取りのみ可能で、更新はできないと言っていると思います。私の質問は、conversation#show ページに移動した場合に is_Read が true になるように機能を実装するにはどうすればよいですか?
ruby-on-rails - 呼び出されていないときにロードされるデータベースからのレコード
これがメールボックスのgemに関係しているのか、それともレールの深いところにあるのかはわかりません。リンクをクリックするたびに、メッセージ テーブル、会話テーブル、領収書テーブルのすべてのレコードが読み込まれます。これは、ページがメールボックスと関係がない場合でも発生します。これがなぜなのか、どうすれば修正できるのか誰か知っていますか?
たとえば、どのページに移動しても、サーバー ログには常に次のように表示されます。
Active Record、Postgres、Rails 4 を使用しています。
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 が生成するもので、サンプル アプリと同じです。
ruby-on-rails - NoMethodError 未定義のメソッド「参加者」
メールボックスの gem をセットアップしましたが、/conversations にアクセスするとundefined method
参加者が表示されます' ` エラーはインデックス付きの Conversations コントローラーを指しています。ユーザーのすべての受信トレイ メッセージを格納するインデックス アクションに、会話インスタンス変数を追加しました。
誰かが私の定義のどこが間違っていたかを見つけることができますか?
会話コントローラー:
ルート:
ruby-on-rails - エラー「応答」アクションがコントローラーに見つかりませんが、ファイルに存在します
メールボックスの宝石を使用して、会話コントローラーで定義された返信アクションを持っていますが、メッセージに返信すると、アクションが見つからないと表示されます。エラーが発生しますAbstractController::ActionNotFound at /conversations/2/reply The action "reply" could not be found for ConversationsController
サーバーを再起動しましたが、同じエラーが表示されます。
会話コントローラー:
返信フォーム ビュー:
ルート: