我想提交一个表单来创建一个用户,但我看到在Powershell中只发送一个GET请求,没有发送POST请求,因此没有任何东西在数据库。我为我的数据库使用rails 4.1.8,ruby 2.0.0和sqlite 3。表单信息不保存到数据库与轨道
这是我第一次开发东西,我非常感谢任何帮助!让我知道如果我应该包括其他任何东西!
用户页面形式
<!DOCTYPE html>
<html>
<body>
<div class="container">
<form class="form-signin">
<h2 class="form-signin-heading">Sign Up For An Account</h2>
<%=form_for(:user, :method => :post) do |f|%>
<%= f.text_field :first_name, :placeholder => 'First name' %>
<%= f.text_field :last_name, :placeholder => 'Last name' %>
<%= f.email_field :email, :placeholder => 'Email' %>
<%= f.password_field :password, :placeholder => 'Password' %>
<%=f.submit 'Sign Up', class: "btn btn-lg btn-primary btn-block"%>
<%end%>
</form>
</div>
</body>
</html>
用户控制器
class UsersController < ApplicationController
def new
@user = User.new
end
def create
@user = User.new(user_params)
if @user.save
session[:user_id] = @user.id
redirect_to '/dashboard'
else
redirect_to '/signup'
end
end
private
def user_params
params.require(:user).permit(:first_name, :last_name, :email, :password)
end
end
路线
Rails.application.routes.draw do
root 'welcome#index'
resources :users
get '/signup' => 'users#new'
get '/login' => 'sessions#new'
post '/login' => 'sessions#create'
delete '/logout' => 'sessions#destroy'
get '/dashboard' => 'hours#new'
end
对不起,不,我不要 –