如何破坏多态模型? 方法破坏缺少的参数

我使用这个gem将私人消息添加到我的应用程序。

https://github.com/LTe/acts-as-messageable/blob/master/lib/acts-as-messageable/message.rb

我正在尝试添加删除链接到邮件。

所以在我的控制器中我有破坏行动:

def destroy @message = current_user.messages.with_id(params[:id]) if @message.destroy flash[:notice] = "All ok" else flash[:error] = "Fail" end end 

在我看来,我有链接: = link_to "Delete", message_path(message.id), :method => :delete

但是当我试图点击我收到的链接时: wrong number of arguments (0 for 1)

这与这个问题有关: 为什么删除方法给我错误的路径? 同

问题是你收到所有消息,所以@message实际上是多条消息。 你可能想做:

 @message = Message.find(params[:id]) 

但这可能与gem有所不同。 gem的文档在自述 文件的底部有一个关于删除的部分。