08. rails 创建user控制器-用户添加

创建控制器

如果创始的数据模型是对应一张表,那么要使用复数的形式

例如给users表创建一个控制器

rails g controller users

路由

config/routes.rb里添加 resources :users

Rails.application.routes.draw do
  get 'welcome/index' #添加路由
  resources :users
  resources :sessions
  # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
end

查看所有的路由

resources :users为我们创建了七条路由

控制器

app/controllers/users_controller.rb

class UsersController < ApplicationController

  # 注册表单页面
  def new
    @user = User.new #声明一个user实例变量,这样可以和v层的模板里进行数据传递
  end

  # 创建数据到页面
  def create
    @uesr = User.new(params.require(:user).permit(:username, :password))
    if @user.save #保存数据,如果成功了走下面的方法
      flash[:notice] = "注册成功,请登陆" #临时创建了一个notice变量,作为控制器和模板之前的数据传递
      redirect_to new_session_path #跳转到new_session_path页面
    else
      render action: :new #如果失败了,再跳转到new的注册表单页面
    end
  end
end

页面

表单页面

公用页面

new页面

posted @ 2021-01-10 23:02  HaimaBlog  阅读(113)  评论(0编辑  收藏  举报