2013-10-28 29 views
0

我正在使用rails 4中的邮箱gem。我试图让它当一个用户转到另一个用户的配置文件时,他们点击该配置文件上的一个按钮,向第二个用户发送一条消息。例如,A转到B的配置文件并单击消息按钮。 B会收到一条消息。在个人资料页,我有以下代码:为什么我无法使用Rails Mailboxer gem工作?

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

我也试着将上面的代码中的link_to标记,但不起作用。在接收邮件页面,我有以下的代码,我从文档了:

Conversations: 

<%= current_user.mailbox.conversations %> 


Inbox: 

<%= current_user.mailbox.inbox %> 

但没有出现无论是在收件箱中的代码或对话代码。请帮忙。谢谢。

回答

0

如果您希望对代码进行评估,请使用<%<%=用于在页面上写东西。 也.send_message方法真的不应该在你的看法。在你的控制器中创建一个动作,或创建整个服务对象并使其负责消息传递。

有一件事是这样的代码真的不属于一个视图。但更重要的是,只有当用户点击链接时,才应该调用它。所以,简单的解决办法是:

  1. 在控制器中的一个,制定一个行动“send_message”
  2. 创建一个路由,这个动作
  3. 放线current_user.send_message(@user, "Body", "subject")到新建的行动,如果你使用重定向不希望为此动作提供模板
  4. 并在您的视图中添加链接(或按钮),对此操作
相关问题