1
我想从联系表格(内置HTML)发送电子邮件与Sinatra内的小马宝石,我遵循文档,但必须丢失一些东西。发送邮件与小马和Sinatra
这是小马配置
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>
后,我失去了一个触发这里有什么地方?
你在哪里吧,对我而言愚蠢的错误不设置操作和后...现在它不喜欢的:主题=> PARAMS [:名字] +“有通过网站与你联系“,这是关于+ – Richlewis
嗯抛出一个无类错误嗯。看起来像'params [:name]'可能是'nil'。确保名称设置为名称的表单元素。像这样:''。如果你想避免'nil'指针错误,不管怎么样,你都可以这样做':subject =>“#{params [:name] ||'Someone'}通过网站与你联系” 。如果没有传入'name'参数,这将使其默认为'Someone'。 – Batkins
这就是我所知道的type = text,id = name,在那里混淆了,再次感谢 – Richlewis