-->

发送邮件与小马和西纳特拉(Sending mail with Pony and Sinatra)

2019-10-17 15:57发布

我想送从接触的形式(建于HTML)与内西纳特拉的小马宝石的电子邮件,我也跟着文档,但必须有所缺失。

这是小马配置

 get '/contact' do
  erb :contact, :layout => :layout
 end

 post '/contact' do
 require 'pony'
 Pony.mail({
:from => params[:name],
    :to => 'myemailaddress',
    :subject => params[:name] + "has contacted you via the Website",
    :body => params[:comment],
    :via => :smtp,
    :via_options => {
     :address              => 'smtp.gmail.com',
     :port                 => '587',
     :enable_starttls_auto => true,
     :user_name            => 'myemailaddress',
     :password             => 'mypassword',
     :authentication       => :plain, 
     :domain               => "localhost.localdomain" 
     }
    })
    redirect '/success' 
   end


   get('/success') do
@notification = "Thanks for your email. I'll be in touch soon."
erb :index, :layout => :layout
   end

所以点击提交联系页面后会被重新渲染,没有消息

这里是我的提交按钮

 <button type="submit" class="btn" value="send">Submit</button>

我失去了一个触发这里的某个地方?

Answer 1:

你确定你有如下形式建立做一个post ? 如果这似乎是刷新页面的form标签的设置可能不正确。 另外,按钮提交应该是input型的标签submit 。 该HTML将需要看起来像这样:

<form action="/contact" method="post">
   <!-- your form elements go here -->

   <input type="submit" value="Sign in">
</form>


文章来源: Sending mail with Pony and Sinatra