我们可以使用Ruby on Rails将数据保存到数据库中。让我们看一个将表单数据保存到数据库中的示例。
步骤1创建一个新的Rails应用程序。
rails new saverecord
步骤2更改目录以登录。
cd saverecord
步骤3从控制台创建支架。
rails generate scaffold User name:string password:digest
步骤4迁移数据库。
rake db:migrate
步骤5转到Gemfile, 然后取消注释以下行。
gem 'bcrypt'
步骤6运行以下命令:
bundle install
步骤7转到app / controllers / users_controller.rb, 并在create方法中编写以下代码。
def create
@user = User.new(user_params)
respond_to do |format|
if @user.save
format.html { redirect_to users_url, notice: 'User was successfully created.' }
format.json { render :show, status: :created, location: @user }
else
format.html { render :new }
format.json { render json: @user.errors, status: :unprocessable_entity }
end
end
end
步骤8转到app / views / users / index.html.erb文件。
<h1>Listing Users</h1>
<% if notice %>
<p id="notice"> <%= notice %>
</p>
<%= link_to 'New User', new_user_path %>
步骤9转到app / views / users / new.html.erb文件。
<h1>New User</h1>
<%= render 'form', user: @user %>
<%= link_to 'Back', users_path %>
步骤10转到app / views / users / _form.html.erb文件。
<%= form_for(user) do |f| %>
<% if user.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(user.errors.count, "error") %> prohibited this user from being saved:</h2>
<ul>
<% user.errors.full_messages.each do |message| %>
<li><%= message %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :password %>
<%= f.password_field :password %>
</div>
<div class="field">
<%= f.label :password_confirmation %>
<%= f.password_field :password_confirmation %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
步骤11启动Rails服务器。
rails s
步骤12在本地主机上运行它。
http://localhost:3000/users
单击”新建用途”以添加新用户。
单击创建使用以添加新用户。
下载
下载此示例