本文档提供了两种实现用户注册审核的方案,针对不同的业务场景设计:
-
方案一:适用于需要简单、快速地实现注册审核流程的场景。该方案利用系统默认的新用户注册功能,为所有新用户分配一个无权限的“游客”角色,后续由管理员在后台手动审核并更新角色。
-
方案二:适用于需要灵活、定制化的注册审核流程的场景。通过设计专用的申请信息表、配置审核工作流以及激活公开表单插件,实现从注册申请提交到自动创建新用户的全流程管理。
1. 方案一:使用无权限的“游客”角色
1.0 适用场景
适用于对注册审核要求较简单,希望使用系统自带的注册功能,并在后台人工审核用户的场景。
1.1 开启密码认证,允许用户注册
1.1.1 进入用户认证页面
首先我们需要确认下用户注册功能是否开启,在系统设置中,前往用户认证页面,该页面管理所有身份认证渠道,如“账号密码登录”、谷歌登录等(可通过插件扩展)。
注册功能的开关在这里:
1.2 设置默认角色(核心)
1.2.1 创建“游客”角色
系统默认开启了注册功能,但是默认角色可能不符合要求。
所以我们首先需要在【角色列表】中创建一个“游客”角色,作为默认角色,并且不包含任何权限。所有新注册的用户会自动分配该角色。
1.3 配置注册用户审核界面(核心)
切换至编辑模式,在后台配置一个简单的表格区块,选择用户表,用于展示和管理注册用户。
1.4 测试注册审核流程,手动更新角色
- 新用户注册后,页面默认显示空白
- 在管理界面中,对于申请信息无误的用户,手动将其角色修改为指定角色,完成审核。
1.5 配置提示页面(可选)
1.5.1 新建一个页面,比如 “注册成功”,内容填写提示信息
可选步骤:我们可以在该空白页面中添加友好提示,例如“您的账户正在审核中,请耐心等待审核通过”,以告知用户当前状态。
1.5.2 分配提示页面权限
接下来我们来到用户权限管理配置,给“游客”分配该页面。注册成功后会自动跳转。
1.6 扩展用户表字段(可选)
可选步骤:如需在注册时收集额外信息以辅助审核,可在用户表中新增相关字段(例如“申请原因”或“邀请码”)。若只需基础注册审核,此步骤可省略。
1.6.1 新增申请字段
进入【用户表】,为用户新增一个字段,用于记录用户在注册时填写的申请原因或邀请码信息。
1.6.2 在“用户认证”中开启字段
配置完成后,前往登录页面点击【注册账户】,即可看到注册表单中相应字段(若配置了可选项则显示,否则呈现基础表单)。
1.6.3 审核页面增加对应字段
我们在审核页面也加上这俩个字段,可以实时审核修改用户角色。
2. 方案二:不开放注册渠道,新增审核中间表
2.0 适用场景
适用于需要更加灵活和定制化注册审核流程的场景。
该方案通过独立的申请信息表、工作流设置和公开表单插件,实现从用户提交注册申请到自动创建用户的完整流程,核心步骤确保基本功能,后续可根据需求扩展更多功能。
2.1 前期准备(核心)
2.1.1 设计申请信息表
2.1.1.1 新建“申请信息”表
-
创建表
在 NocoBase 后台新建一张表,用于存储用户注册申请信息。 -
配置字段
为表添加以下字段,并确保字段类型和描述正确:Field display name Field name Field interface Description ID id Integer 系统自动生成,标识记录的唯一 ID Username username Single line text 申请者的用户名 Email email Email 申请者的电子邮箱地址 Phone phone Phone 申请者的联系电话 Full Name full_name Single line text 申请者的全名 Application Reason application_reason Long text 申请者填写的申请理由或说明 User Type user_type Single select 指定申请者将来的用户类型(如邮件注册、开放注册) Status status Single select 申请当前的状态(如:待审核、已通过、已拒绝) Initial Password initial_password Single line text 新用户初始密码(默认为 nocobase) Created at createdAt Created at 系统记录的创建时间 Created by createdBy Created by 系统记录的创建人 Last updated at updatedAt Last updated at 系统记录的最后更新时间 Last updated by updatedBy Last updated by 系统记录的最后更新人 -
预览表结构
参考下图确认表结构配置正确:
2.1.1.2 数据录入与展示
- 配置审核界面
在主界面中配置一个“注册信息审核”管理界面,用于展示用户提交的申请信息。 - 录入测试数据
进入管理界面,录入测试数据,确保数据能正确展示。
2.2 工作流设置
本部分介绍如何配置工作流,实现审核通过后自动创建新用户的功能。
2.2.1 创建审核工作流
2.2.1.1 新建工作流
- 进入工作流界面
在 NocoBase 后台进入工作流配置页面,选择“新建工作流”。 - 选择触发事件
可选择“操作后事件”或“操作前事件”,此处以操作前事件为例。 - 配置工作流节点
新建一个“新增用户”节点,将当前表单数据转换为新用户数据,并设置字段映射和处理逻辑。
参考图示:
2.2.2 设置表单审核按钮
2.2.2.1 添加“通过”与“拒绝”按钮
在申请信息表单中分别添加“审核通过”和“审核拒绝”两个按钮。
2.2.2.2 配置按钮功能
- 配置“审核通过”按钮
- 绑定至刚刚创建的工作流;
- 提交时将【状态】字段的值设置为“审核通过”。
参考图示:
- 配置“审核拒绝”按钮
- 提交时将【状态】字段的值设置为“审核拒绝”。
2.2.2.3 设置按钮联动规则
为防止重复操作,设置联动规则:当【状态】不为【待审核】时隐藏按钮。
参考图示:
2.3 激活并配置公开表单插件
利用公开表单插件,使用户能通过页面提交注册申请。
2.3.1 激活公开表单插件
2.3.1.1 插件激活操作
- 进入插件管理
在后台管理界面中找到并激活“公开表单”插件。
参考图示:
2.3.2 新建并配置公开表单
2.3.2.1 创建公开表单
- 新建表单
在后台管理中创建一个公开表单,用于用户提交注册申请。 - 配置表单元素
添加必要的表单元素(如用户名、邮箱、联系电话等),并设置相应的校验规则。
参考图示:
2.3.3 激活并配置公开表单插件(核心)
2.3.3.1 测试公开表单
- 打开页面
访问公开表单页面,填写并提交申请数据。 - 验证功能
检查数据是否正确进入申请信息表,并通过工作流审核后自动创建新用户。
参考测试效果:
2.4 后续拓展(可选步骤)
在完成基本注册与审核流程后,我们可根据需求扩展其他功能:
2.4.1 邀请码注册
- 功能说明:通过设置邀请码来限制注册用户的范围和数量。
- 配置思路:在申请表中增加邀请码字段,使用“操作前事件”,在提交之前对该字段进行合法性校验和拦截。
2.4.2 自动邮件通知
- 功能说明:实现审核结果通知、注册成功等邮件自动发送。
- 配置思路:结合 NocoBase 的邮件节点,在工作流中添加发送邮件操作。
若在操作过程中遇到任何问题,欢迎前往NocoBase社区交流或查阅官方文档。希望本指南能帮助您根据实际需求顺利实现用户注册审核,并根据需要灵活扩展。祝您使用顺利,项目成功!