【问题标题】:Why can't I get the Rails Mailboxer gem working?为什么我不能让 Rails Mailboxer gem 工作?
【发布时间】:2013-11-07 21:25:43
【问题描述】:

我正在使用 rails 4 中的邮箱 gem。我正在尝试这样做,以便当用户转到另一个用户的个人资料时,他们单击该个人资料上的一个按钮,该按钮会向第二个用户发送消息。例如,A 转到 B 的个人资料并单击消息按钮。然后 B 将收到来自 a 的消息。在个人资料页面上,我有以下代码:

<%=current_user.send_message(@user, "Body", "subject") %>

我也尝试将上面的代码放在 link_to 标记中,但这不起作用。在接收消息页面上,我有以下从文档中获得的代码:

Conversations:

<%= current_user.mailbox.conversations %>


Inbox:

<%= current_user.mailbox.inbox %>

但收件箱代码或对话代码中均未显示任何内容。请帮忙。谢谢。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 messaging messages mailboxer


    【解决方案1】:

    如果您希望评估您的代码,请使用&lt;%&lt;%= 用于在页面上写东西。 此外 .send_message 方法确实不应该出现在您的视图中。在您的控制器中创建一个操作,或创建整个服务对象并使其负责消息传递。

    有一件事是这样的代码确实不属于视图。但更重要的是,你应该调用它,只有当用户点击一个链接。因此,简单的解决方案是:

    1. 在您的一个控制器中创建一个操作“send_message”
    2. 为此操作创建路线
    3. current_user.send_message(@user, "Body", "subject") 行放入新创建的操作中,如果您不想要此操作的模板,请使用重定向
    4. 并在您的视图中为该操作添加一个链接(或按钮)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多