问题标签 [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 rails 4 自定义视图
大家好,我目前正在使用mailboxer gem,并且想自定义这些渲染的视图
我想在电子邮件标题中添加一个发件人和一个链接,但不知道视图在哪里编辑或在哪里生成它。谢谢。
ruby-on-rails - 在 Rails 应用程序中实现 Mailboxer gem。ActiveRecord::RecordNotFound
我正在尝试在我的 Rails 应用程序中实现出色的 Mailboxer gem。我想在用户个人资料页面上包含一个按钮,该按钮加载表单以向该用户发送私人消息。我尝试使用此问题中发布的代码作为指南,但没有任何运气: Rails mailinger gem, send message to user using form。
单击用户页面上的按钮将加载私人消息表单。但是,单击该表单上的发送按钮会显示以下错误:
ActiveRecord::RecordNotFound in MessagesController#create
Couldn't find User without an ID
这是相关的代码。我将在代码示例下方发表我的想法:
消息控制器
new.html.erb(消息视图 - 新)
Mailboxer 文档建议
current_user.send_message(@user, params[:body], params[:subject])
在 create 函数中使用(我注释掉了),但是我无法在“new”函数中将我通过 GET 获得的用户带过来。我正在尝试使用新功能将其发送到创建功能,但我完全卡住了。为什么我当前的创建函数无法从新函数中找到用户 ID?
作为参考,这里是 gem 文档的链接: https ://github.com/ging/mailboxer
谢谢!
编辑:用户个人资料页面上的按钮代码
相关路线
ruby-on-rails - 在 Rails 的 Mailboxer 收件箱上显示用户名
我在 Rails 应用程序中使用 Mailboxer ( https://github.com/ging/mailboxer ) gem 来处理用户之间的私人消息。根据文档,我= render mailbox.inbox
用来显示登录用户的所有对话(消息)的列表。但是,该方法仅输出消息的主题。我需要显示邮件的发件人以及主题。如何编辑此输出以显示发件人姓名?
SQL 表显示发件人姓名未存储在对话表中,而是通过通知表中的通知表(一对多)。我尝试使用<%= conversation.notifications.sender_id %>
,但出现以下错误:
为了显示对话的用户和主题,我可以添加什么到对话控制器和查看?
谢谢!
对话控制器:
ruby-on-rails - 在 Rails 中使用邮箱时无法将邮件标记为已读
如何在邮箱中将任何邮件标记为已读?
即使我添加以下行:<% conversation.mark_as_read(current_user) %>
在我看来,它也不能解决我的问题。
ruby-on-rails - 邮箱 gem - 查找邮件发件人
我在邮箱宝石上度过了最艰难的时光。我已经让它工作,我可以发送和接收消息,但对于我的生活,我无法弄清楚如何显示它们。我想在这样组织的表格中显示收件箱:
我已经工作了几个小时试图弄清楚如何在接收者收件箱中访问消息的发件人,但我无法弄清楚。我试过循环浏览对话、收据、通知等,但我仍然不知道该怎么做。我不能使用:
因为没有办法使用这些方法来组织消息的显示方式(至少据我所知)。如何遍历消息并找到每条消息的消息发件人?
ruby-on-rails - 如何使用邮箱访问已发送消息页面上的收件人
我正在使用mailboxer gem 在我的ruby on rails 应用程序中发送消息。宝石正在工作。我一生都无法弄清楚如何在已发送消息页面上访问收件人。在已发送消息页面上,我正在尝试遍历已发送消息,并访问已发送消息的收件人并将该人显示给用户。
在常规收件箱页面上,我使用了以下内容:
我正在尝试对已发送消息页面进行类似的查找,但我不知道该怎么做(特别是访问收件人的电子邮件)。
我不能使用:
因为没有办法使用这些方法来组织消息的显示方式(至少据我所知)。如何遍历消息并找到每条消息的消息收件人?
ruby-on-rails - 未连接到 Internet 时使用 Mailboxer gem 的 SocketError
我正在使用邮箱 gem。当未连接到 Internet 并使用我的本地主机时,如果我尝试从我的站点的一个用户向我的站点的另一个用户发送消息,我会收到以下错误:
这是什么意思?gem 是否以某种方式连接到邮箱服务器的服务器?我不想依赖别人的服务器来发送我的网站的内部消息,所以我需要找出如果没有连接到互联网,邮箱为什么不能工作?如果 gem 依赖于他们的服务器,我怎么知道他们没有查看消息?
ruby-on-rails - Rails Mailboxer - Create Conversation from Button
I'm using the mailboxer gem to implement user messaging on an app. Currently, i've got it set up based on this https://github.com/RKushnir/mailboxer-app. Users can enter an email address, subject and message into a form, and start a conversation.
I'd like a user to be able to start a conversation without having to enter another users email address - for instance clicking a button on a relevant page where I can pass a @user in as the recipient.
Here is my current controller:
and corresponding _form:
I've got all the views and actions working relating to replying to conversations with messages, display all users conversations etc, but just not how to start it without having to type the address in.
Thanks for any help
Added: I don't mind editing the above form etc and losing the capability for a user to enter another's email, as I don't want them to be able to do that. The buttons in question will be named along the lines of 'ask the client a question', or 'ask the venue a question', rather than just sending messages to random users.
EDITED TO ADD:
Thanks for that, makes sense and I am nearly there...
I've ended up adding a copy of the original conversation form i'm using (in my _form file):
This works fine from the correct view that I need it in, and does everything as expected - however, when I try to hide the recipients text field and pass in the users email address (rather than having to manually type it in, I am getting problems:
This is throwing an error in the controller:
undefined method `split' for nil:NilClass
If I 'view source' on Firefox before I hit submit on the form, I can see that there is a field there with the users email address passed in correctly, but it's just not going to the controller for some reason?
Something that may help - If I change the hidden_field_tag back to a normal field, and pass in the email address as above, the view won't even load. It is saying 'undefined method `merge' for "user@user.com":String and highlighting that row in the code.
Thanks
ruby-on-rails - Mailboxer - 发送和接收的消息未加载
我正在实施 Mailboxer gem,但在显示消息时遇到问题。这是我保存已发送消息的操作:
send_message的输出是
不应该是receiver_id #1?另外,这些数据存储在哪里,在哪个表中?
当我显示已发送的消息 ( current_user.mailbox.sentbox ) 时,我看不到我刚刚发出的这条消息。当我以 ID 1 的用户身份登录时,我也看不到收到的消息。
我究竟做错了什么?
谢谢