26
2019.2

类库

作者: POPASP
POPASP的类库包括基类库和应用类库,系统的类库命名规则如下: | 类型 | 规则 | 示例 | | --------- | ----- | -----| | 控制器类 | 模块名 | 例如 User、Info | | 模型类 | 模型名 | 例如 User、Info | | `K_`模型类(3.1添加) | 模型名 | 例如 Public、Tool | | 框架类 | 以`popasp_`为前缀 | 例如 popasp_access,文件名小写,类名全部大写,POPASP_ACCESS | 除了框架类外,类名和文件名一致, 详细命名规范可以参考1.7 命名规范。 ### 基类库 基类库是指符合POPASP类库规范的系统类库,包括POPASP的核心基类库和扩展基类库。核心基类库目录位于系统目录,核心基类库也就是POPASP类库,扩展基类库1.0版本暂时没有。 ### 类库导入 POPASP类库的导入不同于函数的导入,包含下面两种方式: #### 一、基类导入 ```brush:vb dim db,db2 set db = POP_MVC.import("POPASP_ACCESS") '得到实例化的类对象 set db2 = P_("ACCESS") '用简写函数 P_ '.... var_export db.Version var_export db2.Version set db = nothing set db2 = nothing ``` #### 二、模型类导入 模型类导入有两种方法,一是使用`M_`函数,用于数据表数据添加或修改时的自动完成与自动验证,一是使用`B_`函数,用于数据查询、删除或个别字段的修改 ```brush:vb dim mUser,mContact set mContact = M_("contact") '用简写函数 M_ '下面使用POP_MVC.Model与M_函数等价 'set mUser = POP_MVC.Model("contact") '得到实例化的类对象 set mUser = B_("user") '.... var_export mUser.TableName 'user var_export mContact.db.getPK() '使用M_函数得到的实例,需要使用db属性 ``` ### 三、 `K_`定义的模型 有些函数集合,我们并不想在入口文件中引入,而是在程序中动态调用,此时的模型类相当于一个函数集合,其位置应该在App/Model/目录下,比如 ```brush:vb <% Class Public sub print(arg) var_export arg end sub End Class %> ``` 使用: ```brush:vb K_("Public").print(POP_MVC) '参数POP_MVC可以改成自己的需要的 ``` #### 四、执行控制器的方法 控制器类不同于基类与模型类,它无须导入,但是很有必要执行控制器的方法 ```brush:vb Call A_("index") '建议采用简写 Call POP_MVC.Action("index") '完整的写法 ```