未定义的方法`acts_as_messageable_messages_path`

我在我的应用程序中使用act-as-messageable ,rails gem。

但是在我的messages_controller中我有

def new @message = ActsAsMessageable::Message.new end 

在我看来,我有

  

这会引发以下错误

undefined方法`acts_as_messageable_messages_path’

我不确定为什么gem会发生这种情况。

尝试明确说明您希望表单指向哪个路径(应该是messages#create action):

 <%= form_for(@message) :url => messages_path, :method => :post do |f| %> 
<%= f.label :to %>
<%= f.email_field :to %>
<%= f.label :topic %>
<%= f.text_field :topic %>
<%= f.label :body %>
<%= f.text_area :body %>
<% end %>

这假设您在routes.rb文件中有此:

 resources :messages 

此外,请确保将所需字段传递给ActsAsMessageable : https : //github.com/LTe/acts-as-messageable/wiki/Example-controller

这是因为gem不会添加路由,而表单助手会尝试生成发送URL。 用rake routes检查。