【发布时间】:2015-08-22 05:48:45
【问题描述】:
我正在尝试构建一个非常简单的表单,用于为我的婚礼注册参加者。这有点草稿,因为我不知道我会使用 Sinatra 还是 Rails。我将设置预定的电子邮件通知客人和我自己婚礼的细节。
所以无论如何,这里的代码我无法使用插入语法将任何内容保存到数据库中。一些代码被省略了。这只是与 POST 问题有关。
require "sinatra"
require "sequel"
require "sqlite3"
DB = Sequel.connect('sqlite://pauley_wedding.db')
DB.create_table! :attendees do
primary_key :id
string :fname
string :lname
string :phone
string :email
end
@attendees = DB[:attendees]
这里是路线/视图:
get '/' do
erb :index, :layout => :layout
end
get '/about' do
erb :about, :layout => :layout
end
get '/rsvp' do
erb :rsvp, :layout => :layout
end
post '/rsvp' do
@attendees.insert(:fname => params[:fname], :lname => params[:lname], :phone =>
params[:phone], :email => params[:email])
redirect '/confirm_rsvp'
end
get '/confirm_rsvp' do
erb :confirmation, :layout => :layout
end
get '/admin' do
erb :admin, :layout => :layout
@attendees
end
@@rsvp
<style>
h1 {
color: tan;
}
.lead {
color: tan;
}
</style>
<h1><p class="lead">Sign up!</p></h1>
<form action="/rsvp" method="POST">
<p class="lead">First Name:</p><br /><input type="text" name="fname"><br /><br />
<p class="lead">Last Name:</p><br /><input type="text" name="lname"><br /> <br />
<p class="lead">Phone Number:</p><br /><input type="text" name="phone"><br /><br />
<p class="lead">Email Address:</p><br /><input type="text" name="email">
<hr />
<button class="btn btn-primary" input type="submit">Sign Up!</button>
</form>
【问题讨论】:
标签: ruby sqlite sinatra sequel