Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
uni-app
提交
f58e8158
U
uni-app
项目概览
DCloud
/
uni-app
大约 2 个月 前同步成功
通知
708
Star
38705
Fork
3642
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
7
列表
看板
标记
里程碑
合并请求
1
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
7
Issue
7
列表
看板
标记
里程碑
合并请求
1
合并请求
1
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
f58e8158
编写于
10月 31, 2020
作者:
雪洛
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: clientDB
上级
78144cb4
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
28 addition
and
28 deletion
+28
-28
docs/uniCloud/database.md
docs/uniCloud/database.md
+1
-1
docs/uniCloud/schema.md
docs/uniCloud/schema.md
+27
-27
未找到文件。
docs/uniCloud/database.md
浏览文件 @
f58e8158
...
...
@@ -1041,7 +1041,7 @@ db.collection('order')
## action@action
action的作用是在执行前端发起的数据库操作时,额外触发一段云函数逻辑。它是一个可选模块。
action的作用是在执行前端发起的数据库操作时,额外触发一段云函数逻辑。它是一个可选模块。
action是运行于云函数内的,可以使用云函数内的所有接口。
当一个前端操作数据库的方式不能完全满足需求,仍然同时需要在云端再执行一些云函数时,就在前端发起数据库操作时,通过
`db.action("someactionname")`
方式要求云端同时执行这个叫someactionname的action。还可以在权限规则内指定某些操作必须使用指定的action,比如
`"action in ['action-a','action-b']"`
,来达到更灵活的权限控制。
...
...
docs/uniCloud/schema.md
浏览文件 @
f58e8158
...
...
@@ -336,39 +336,39 @@ uniCloud推出了`openDB`开源数据库规范,包括用户表、文章表、
2.
底部 “扩展校验函数” 点击 “+” 增加校验函数 !
[](
https://vkceyugu.cdn.bspapp.com/VKCEYUGU-uni-app-doc/2f4d0230-12a2-11eb-b244-a9f5e5565f30.png
)
给函数起个名字,比如叫“checkabc”,然后写具体的js代码,如下
```
// 扩展校验函数示例
exports = function (rule, value, data, callback) {
// rule 当前规则
// value 当前规则校验数据
// data 全部校验数据
// callback 可选,一般用于自定义 errorMessage,如果执行了callback return 值无效,callback 传入的 message 将替换 errorMessage
// callback(new Error('message')) 传入 Error 类型时校验不通过
// callback('message') 传入 String 类型时通过
return value.length < 10
}
```
给函数起个名字,比如叫“checkabc”,然后写具体的js代码,如下
```
js
// 扩展校验函数示例
exports
=
function
(
rule
,
value
,
data
,
callback
)
{
// rule 当前规则
// value 当前规则校验数据
// data 全部校验数据
// callback 可选,一般用于自定义 errorMessage,如果执行了callback return 值无效,callback 传入的 message 将替换 errorMessage
// callback(new Error('message')) 传入 Error 类型时校验不通过
// callback('message') 传入 String 类型时通过
return
value
.
length
<
10
}
```
3.
在表结构 schema 编辑页面中的
`validateFunction`
属性中配置上面编写的 扩展校验函数 的名称,保存生效
```
json
{
"bsonType"
:
"object"
,
"required"
:
[
"name"
],
"properties"
:
{
"name"
:
{
"bsonType"
:
"string"
,
"label"
:
"姓名"
,
"validateFunction"
:
"checkabc"
,
"errorMessage"
:
{
"required"
:
"{label}不能为空"
```
json
{
"bsonType"
:
"object"
,
"required"
:
[
"name"
],
"properties"
:
{
"name"
:
{
"bsonType"
:
"string"
,
"label"
:
"姓名"
,
"validateFunction"
:
"checkabc"
,
"errorMessage"
:
{
"required"
:
"{label}不能为空"
}
}
}
}
}
```
```
`validateFunction`
里的代码是可以联网的。一个常见场景是内容的敏感词过滤,可以将内容提交到三方校验服务里,如果校验通过再入库
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录