用于WF的InfoPath表单的ItemMetadata辅助数据源内的“字段”的作用:
1. 获取“任务”列表中当前“列表项”的某个同名‘字段’(不含 ows_)的
值,由此可见ItemMetadata中的内容就像SQL语句的select部分。
2. 保持本表单的“最近值”。
用于WF的InfoPath表单的ItemMetadata辅助数据源内的“字段”的作用:
1. 获取“任务”列表中当前“列表项”的某个同名‘字段’(不含 ows_)的值,由此可见ItemMetadata中的内容就像SQL语句的select部分。
2. 保持本表单的“最近值”。转载于:https://www.cnblogs.com/windpole/archive/2008/07/16/1244604.html
在填写表单的时候,为了不让攻击网站,为了安全起见,ThinkPHP的字段映射功能可以让你在表单中隐藏真正的数据表字段,而不用担心放弃自动创建表单对象的功能。
1,创建数据
namespace Home\Model;
use Think\Model;
Class UserModel extends Model{
protected $_map = array(
'name' =>'username', // 把表单中name映射到数据表的username字段
'mail' =>'email', // 把表单中的mail映射到数据表的email字段
);
}在表单里面就可以直接使用name和mail名称作为表单数据提交了。我们使用create方法创建数据对象的时候,会自动转换成定义的实际数据表字段。
2,获取数据
使用字段映射后,默认不会对读取的数据会自动处理,
// 实例化User模型
$User = D('User');
$data = $User->find(3);
dump($data);
输出结果类似:array(size=4)
'id' => int 3
'username'=> string 'thinkphp'(length=8)
'email' => string 'thinkphp@gmail.com' (length=18)
'status' => int 1这个时候取出的data数据包含的是实际的username和email字段。
文章来自 www.huthon.com
比如:文章模型下的时间和日期模型字段-datatime,与当前datetime模型字段相关的文件都在phpcms/content/fields/datetime/文件夹下
1.phpcms/content/fields/datetime/field_add_form.inc.php:在后台添加时间和日期模型字段时,相关参数部分表单信息
2.phpcms/content/fields/datetime/field_edit_form.inc.php:在后台修改时间和日期模型字段时,相关参数部分表单信息
3.phpcms/content/fields/datetime/form.inc.php:后台添加文章内容时生成的时间和日期表单需通过此文件中的函数来生成;此文件中的函数会动态缓存到caches/caches_model/caches_data/content_form.class.php文件中
4.phpcms/content/fields/datetime/input.inc.php:后台添加文章内容时,对提交的表单数据进行验证入库,需要此文件中的函数完成验证和过滤;此文件中的函数会动态缓存到caches/caches_model/caches_data/content_input.class.php文件中
5.phpcms/content/fields/datetime/output.inc.php:在前台显示文章内容时,对要显示的内容进行过滤输出以供前台显示,需要此文件中过滤函数;此文件中的函数会动态的缓存到caches/caches_model/caches_data/content_output.class.php文件中
注意:模型字段表v9_field_data 中setting字段的值一般为字段模型相关参数的设置信息
6、以copyfrom模型字段为例:
①、添加模型字段时,模型字段的相关属性表单,主要用来制作复杂的模型字段,如:万能模型字段、下拉菜单模型字段等等
field_add_form.inc.php
field_edit_form.inc.php
②、模型字段生成的表单代码
form.inc.php
③、模型字段的输入输出处理函数
input.inc.php 主要用于在模型字段数据入库时对模型字段的值进行验证,比如:转义等等 ;会输出到缓存文件caches/caches_model/caches_data/content_input.class.php
output.inc.php 主要用于处理前台要显示的模型字段数据,比如:转义等等;会输出到缓存文件caches/caches_model/caches_data/content_output.class.php
7.在设计模型前,我们首先要想好前台的内容显示是什么,当我们确认了前台要显示什么内容的时候,模型基本也就出来了
模型复制,你可以对系统内置的任意模型(专题除外)进行复制产生一个新的模型,在新模型你可以自由增加字段,以达到在原来模型的基础上的扩展;
分表存储,允许你在定义或模型复制时指定不同的主表和附加表,从而实现彻底的分表存储;
内容模型指的是网站根据不同栏目有不同需求,例如说我们发布一些普通文章。它只是需要到文章模型就够了。但是例如我们的栏目是图片类型,而且一篇图片文章是一组图片组成的,那这个时候图片类型就更加适合了。而说到软件类型,顾名思义,它针对的是给广大用户下载用,它发布的文章不仅仅只是介绍内容而已,往往还带有下载地址,还有软件信息等。商品类的是涉及到产品价格购买流程,分类信息涉及到的往往是一些地区分类,或者行业性分类。 所以说不同的模型针对的对象是不一样的,这个得根据网站具体的栏目去定。而且dedecms的内容模型主要是针对开发者去用的,对于用户来说,可以不去了解其作用,因为只要知道怎么发布和普通维护就可以了。pc系统是很灵活的,在织梦系统中有内容模型这个概念,不同内容模型可以用来构建不同内容形式的站点,在系统中自带了以下几种模型:普通文章、图集、软件、商品、分类信息、专题。通过系统自带的模型,我们可以用来构建不同类型的站点,例如:使用图集可以做一个图片站,用软件模型构建一个软件下载站点。当然以上随系统附带的模型被称为系统模型,用户可以自己定义一些模型,比如图书、音乐专辑等,自定义了这些模型才可以构建更多内容形式的站点,本篇将讲述如何使用系统的自定义模型管理功能来实现内容模型的构建。
模型的建立在于你的网站要显示什么样子的内容
在项目中用到ElementUI的表单验证时,发现离开焦点后获取的输入框内容是空的,表示就是获取不到输入的字段。
以下是官网给出的表单验证的步骤和相关的代码。这是上半部分的。
script部分的代码如下:
重点来了:在仔细检查后发现,element-ui的表单校验规则中,el-form-item绑定的prop必须和该item下的表单元素绑定的v-model值的名称一致。也就是我把formData里的属性名改成和rules里的属性名一致就可以了!!!但是,在官网中并没有说到这个名字需要一致的问题。
官网的使用规则是这样的:
在这贴上我部分的代码:<el-dialog title="提示" :visible.sync="modiDialog" width="80%" :before-close="handleClose" > <el-form :model="ruleForm" label-width="100px" :rules="rules"> <el-form-item label="用户姓名" prop="modiName"> <el-input placeholder="请输入姓名" v-model="ruleForm.modiName"></el-input> </el-form-item> <el-form-item label="密码" prop="modiPassword"> <el-input placeholder="请输入密码" v-model="ruleForm.modiPassword" show-password></el-input> </el-form-item> <el-form-item label="性别" prop="sex"> <el-radio-group v-model="ruleForm.sex"> <el-radio label="男"></el-radio> <el-radio label="女"></el-radio> </el-radio-group> </el-form-item> </el-form> <span slot="footer" class="dialog-footer"> <el-button @click="modiDialog = false">取 消</el-button> <el-button type="primary" @click="modiDialog = false">确 定</el-button> </span> </el-dialog>
script部分的:
export default { data() { return { ruleForm: { // 定义修改的数据 modiName : '', modiPassword : '', sex: '', }, tableData: [], delName: '', modiDialog : false, //表单验证 rules:{ modiName:[ { required: true, message: '请输入姓名', trigger: 'blur' }, { min: 2, max: 5, message: '长度在 2 到 5 个字符', trigger: 'blur' } ], modiPassword:[ { required: true, message: '请输入密码', trigger: 'blur' }, { min: 6, max: 15, message: '长度在 6 到 15 个字符', trigger: 'blur' } ], sex: [ { required: true, message: '请选择性别', trigger: 'change' } ], } }
以上,虽然问题不大,但是找了挺久的bug就当记录一下,下次就知道避免这个坑了。