Ruby on rails Rails 3.1中的路由问题
嘿,我正试图发送一个链接点击电子邮件 这是我的链接:Ruby on rails Rails 3.1中的路由问题,ruby-on-rails,email,routes,Ruby On Rails,Email,Routes,嘿,我正试图发送一个链接点击电子邮件 这是我的链接: <%=link_to 'Hello', {:action => :contact}%> 我的邮递员: class Contact < ActionMailer::Base default from: "****" default to: "****" def contact_form mail(:subject => "Registered") end end 然而,我得到的错误
<%=link_to 'Hello', {:action => :contact}%>
我的邮递员:
class Contact < ActionMailer::Base
default from: "****"
default to: "****"
def contact_form
mail(:subject => "Registered")
end
end
然而,我得到的错误
未知操作
找不到PagesController的操作“show”
这件事让我毛骨悚然,我看不出有什么问题 这是因为您的路由正在定义PUT请求,而指向的链接正在发出GET请求。您可以将路由更改为使用
get
,或者将link\u更改为button\u并指定PUT方法。我个人会选择后者,因为让GET请求这样做是不好的做法
<%= button_to 'Hello', contact_pages_path, :method => :put %>
:put%>
更改以下行:
<%=link_to 'Hello', {:action => :contact} %>
:contact}%>
到
:put%>
谢谢,但这只是将错误更改为无法为PagesController而不是show找到操作“update”
<%= button_to 'Hello', contact_pages_path, :method => :put %>
<%=link_to 'Hello', {:action => :contact} %>
<%=link_to 'Hello', contact_pages_path, :method => :put %>