我正在创建一个通常形式的联系页面,我发现Pony似乎符合我需要的账单。该网站基本上是静态的,因此使用Middleman构建,但我一直在阅读并想要添加一个联系表单Sinatra会有所帮助。
我的表格;我有我的红宝石代码,但我很难将它们拉到一起。我似乎错过了一些会触发ruby代码的东西。
表格,在/source/contact-us.html.haml:
%form.contact{ :action => "/contact-us.html", :method => "post"}
%fieldset
%label{:for => "name"} Full name *
%input{:type => "text", :name => "name"}
%label{:for => "email"} Email addresss *
%input{:type => "text", :name => "email"}
%label{:for => "phone"} Phone *
%input{:type => "text", :name => "phone"}
%input{:type => "submit", :value => "Send", :class => "read-more"}
ruby代码(目前在/mail.rb中):
require 'sinatra'
require 'pony'
post '/contact-us.html' do
options = {
:to => '[my email]',
:from => params[:email],
:subject => params[:name],
:body => params[:phone]
}
Pony.mail(options)
redirect '/thankyou.html'
end
我在本地测试并托管在我已经验证的运行Ruby的服务器上(这始终是一个好的开始;)
我已经看过stackoverflow的其他地方,我发现了类似的东西,但没有任何东西可以帮助我解决我的问题:
Contact form in ruby, sinatra, and haml
Sending mail with Pony and Sinatra
这是我第一次使用Ruby和Middleman作为网站,所以我学到了很多东西 - 我无法帮助,但觉得我在这里错过了一些相当明显的东西..