Rails用户管理系统实战 #
一、项目概述 #
1.1 功能需求 #
| 功能 | 说明 |
|---|---|
| 用户CRUD | 增删改查 |
| 角色管理 | 管理员、普通用户 |
| 权限控制 | Pundit授权 |
二、实现步骤 #
2.1 用户模型 #
ruby
# app/models/user.rb
class User < ApplicationRecord
enum role: { user: 0, admin: 1 }
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :validatable
end
2.2 控制器 #
ruby
# app/controllers/admin/users_controller.rb
module Admin
class UsersController < BaseController
def index
@users = User.all
end
def update
@user = User.find(params[:id])
authorize @user
if @user.update(user_params)
redirect_to @user, notice: '更新成功'
end
end
private
def user_params
params.require(:user).permit(:email, :role)
end
end
end
三、总结 #
3.1 核心要点 #
| 要点 | 说明 |
|---|---|
| enum | 角色枚举 |
| Pundit | 权限控制 |
| namespace | 管理后台 |
3.2 下一步 #
现在你已经完成了用户管理系统,接下来让我们学习 电商后台,深入了解Rails的电商系统实战!
最后更新:2026-03-28