1. 最简单的models实现

前章分析过控制器, models, meta验证器三者的关系. 这里讨论 models 的实现方式.

首先这里 models 只实现最简单的单表操作业务逻辑, 对于复杂逻辑还是单独写接口比较好.

TypePress 是通过定义 CURD 操作相关字段顺序来实现简单 models.

// Users 表查询 可通过的 Fields, 注意次序是有优先级的
Users.Q.Fields = []string{"User_id", "User_login", "User_pass", "Site", "User_nicename", "User_status"}
// Users 表添加 可通过的字段值
Users.A.Fields = []string{"User_login", "User_pass", "User_nicename", "Site"}
// Users 表添加 必须要有的字段值, 这里和 Fields 完全一致
Users.A.Exists = Users.A.Fields
// Users 表更新 可设定的字段值
Users.U.Fields = []string{"User_pass", "User_nicename", "Site", "User_status"}
// Users 表更新 条件必须给定的字段值
Users.U.Exists = []string{"User_id"}

很明显 FieldsExists 在不同的操作中所代表的含义是不同的.

基于简单的目标, models 中的代码都就是这些字段的定义. 执行代码的逻辑反而很简单这里就不贴了.

Copyright © studygolang.com 2013 all right reserved,powered by Gitbook该文件修订时间: 2017-07-21 20:07:42

results matching ""

    No results matching ""