|
|
// 导出一个函数,该函数是模块的主要接口。
|
|
|
// 它接受两个参数:数据库对象db(用于数据库操作)和一个回调函数callback(在模型定义后执行)。
|
|
|
module.exports = function(db, callback) {
|
|
|
// 定义一个名为"PermissionModel"的模型,用于表示系统中的权限。
|
|
|
// 使用db.define方法,该方法来自传入的数据库对象db。
|
|
|
db.define("PermissionModel", {
|
|
|
// 定义模型的属性,这些属性将映射到数据库表中的列。
|
|
|
|
|
|
// ps_id属性:权限的唯一标识符,类型为'serial',表示这是一个自增的序列。
|
|
|
// key: true表明这个属性是主键。
|
|
|
ps_id: {type: 'serial', key: true},
|
|
|
// 注释:权限ID,自增主键,用于唯一标识每个权限记录。
|
|
|
|
|
|
// ps_name属性:权限的名称,类型为字符串(String)。
|
|
|
// 用于存储权限的描述性名称。
|
|
|
ps_name: String,
|
|
|
// 注释:权限名称,类型为字符串,用于标识和描述权限。
|
|
|
|
|
|
// ps_pid属性:父权限的ID,类型为数字(Number)。
|
|
|
// 用于表示权限之间的层级关系,即哪个权限是另一个权限的父级。
|
|
|
ps_pid: Number,
|
|
|
// 注释:父权限ID,类型为数字,用于建立权限的层级结构。
|
|
|
|
|
|
// ps_c属性:控制器名称,类型为字符串(String)。
|
|
|
// 在MVC架构中,控制器负责处理用户的请求。
|
|
|
// 这个属性可能用于指示哪个控制器与这个权限相关联。
|
|
|
ps_c: String,
|
|
|
// 注释:控制器名称,类型为字符串,用于指示处理请求的控制器。
|
|
|
|
|
|
// ps_a属性:动作名称,类型为字符串(String)。
|
|
|
// 在MVC架构中,动作是控制器中的一个方法,用于执行特定的任务。
|
|
|
// 这个属性可能用于指示哪个动作与这个权限相关联。
|
|
|
ps_a: String,
|
|
|
// 注释:动作名称,类型为字符串,用于指示控制器中要执行的动作。
|
|
|
|
|
|
// ps_level属性:权限级别,类型为字符串(String)。
|
|
|
// 这个属性可能用于表示权限的重要性或访问级别。
|
|
|
ps_level: String
|
|
|
// 注释:权限级别,类型为字符串,用于表示权限的等级或重要性。
|
|
|
}, {
|
|
|
// 定义模型的选项,这些选项用于配置模型的行为或属性。
|
|
|
|
|
|
// table选项:指定这个模型在数据库中对应的表名。
|
|
|
// 在这个例子中,表名被指定为"sp_permission"。
|
|
|
table: "sp_permission"
|
|
|
// 注释:指定模型对应的数据库表名为sp_permission,这是存储权限信息的数据库表。
|
|
|
});
|
|
|
|
|
|
// 调用回调函数callback,表示模型定义已经完成。
|
|
|
// 回调函数不接受任何参数,因为它主要用于执行一些后续的逻辑处理,而不是处理模型定义的结果。
|
|
|
return callback();
|
|
|
} |