我已经查看了几个类似于此问题的stackoverflow问题,以及contact_us github repository中的所有问题,但是那里提供的答案并未解决此问题。我会查看我的代码,希望能得到一些帮助。 :)
我已经使用Mailgun和他们自己的示例代码正确地设置了我的ActionMailer,如下所示:
Development.rb
config.action_mailer.delivery_method = :smtp
config.action_mailer.default_charset = "utf-8"
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.smtp_settings = {
:authentication => :plain,
:address => "smtp.mailgun.org",
:port => 587,
:domain => "my-mailgun-domain.com",
:user_name => "postmaster@my-mailgun-domain.com",
:password => "my-password"
}
当然,我从Mailgun中放置了自己的域名,用户名和密码来代替虚拟属性。
app / mailer / contact_us / new_formtastic.html.erb是在' rake exec contact_us:install'如下:
<h2><%= t('.contact_us') %></h2>
<%= semantic_form_for @contact, :url => contacts_path do |f| %>
<%= f.input :name, :label => t('.name') if ContactUs.require_name %>
<%= f.input :email, :label => t('.email') %>
<%= f.input :subject, :label => t('.subject') if ContactUs.require_subject %>
<%= f.input :message, :as => :text, :label => t('.message') %>
<%= f.action :submit, :label => t('.submit'), :button_html => { :alt => t('.submit'), :id => 'contact_us_contact_submit', :title => t('.submit') } %>
<% end %>
我使用的是Formtastic,而不是simple_form,并且已经在contact_us.rb中指定了,而不是如contact_us安装说明中所述的nil。
我也(我假设正确)将我的Mailgun邮件用户名放在&#39; config.mailer_from =&#39;和我想要的目标地址在&#39; config.mailer_to =&#39;在contact_us.rb中的地方。 (由于安全原因,两者都被省略)
表单在页面上正确呈现,但提交时,我收到上述错误。
这是路由问题吗?
根据要求,更多信息:
> bundle exec rake routes | grep contacts
contacts GET /contacts(.:format) contacts#index
POST /contacts(.:format) contacts#create
new_contact GET /contacts/new(.:format) contacts#new
edit_contact GET /contacts/:id/edit(.:format) contacts#edit
contact GET /contacts/:id(.:format) contacts#show
PATCH /contacts/:id(.:format) contacts#update
PUT /contacts/:id(.:format) contacts#update
DELETE /contacts/:id(.:format) contacts#destroy
POST /contacts(.:format) contact_us/contacts#create
GET /contacts/new(.:format) contact_us/contacts#new
contact_us GET /contact-us(.:format) contact_us/contacts#new