Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wychl
uni-app
提交
61c66c4f
U
uni-app
项目概览
wychl
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
61c66c4f
编写于
7月 25, 2020
作者:
雪洛
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: uni-clientDB rename
上级
7b0a10a8
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
43 addition
and
42 deletion
+43
-42
docs/uniCloud/_sidebar.md
docs/uniCloud/_sidebar.md
+1
-2
docs/uniCloud/uni-curd.md
docs/uniCloud/uni-curd.md
+42
-40
未找到文件。
docs/uniCloud/_sidebar.md
浏览文件 @
61c66c4f
...
...
@@ -15,8 +15,7 @@
*
[
云存储
](
uniCloud/storage.md
)
*
扩展能力
*
[
uni-id
](
uniCloud/uni-id.md
)
*
[
uni-curd
](
uniCloud/uni-curd.md
)
*
[
uni-account
](
uniCloud/uni-account.md
)
*
[
uni-clientDB
](
uniCloud/uni-curd.md
)
*
[
unipay
](
uniCloud/unipay.md
)
*
[
发送短信
](
uniCloud/send-sms.md
)
*
[
前端网页托管
](
uniCloud/hosting.md
)
...
...
docs/uniCloud/uni-curd.md
浏览文件 @
61c66c4f
...
...
@@ -20,6 +20,8 @@
本项目包括云函数和客户端两部分,需要搭配使用,具体请参考下面文档。
插件地址:
[
https://ext.dcloud.net.cn/plugin?id=2314
](
https://ext.dcloud.net.cn/plugin?id=2314
)
**示例项目使用须知**
1.
下载示例项目后选择服务空间
...
...
@@ -98,45 +100,45 @@ uniCloud.callFunction({
**使用示例**
```
js
'
use strict
'
;
'
use strict
'
;
const
uniCurd
=
require
(
'
uni-curd
'
)
const
db
=
uniCloud
.
database
()
const
dbCmd
=
db
.
command
const
dbCmd
=
db
.
command
exports
.
main
=
async
(
event
,
context
)
=>
{
// 这里可以判断用户身份给予不同权限,例如:可以从event里拿到uni-id的token,根据token和客户端参数决定查询权限限制
try
{
const
res
=
await
uniCurd
({
// 这里可以判断用户身份给予不同权限,例如:可以从event里拿到uni-id的token,根据token和客户端参数决定查询权限限制
try
{
const
res
=
await
uniCurd
({
command
:
event
.
command
,
pagination
:
event
.
pagination
,
rules
:
{
pagination
:
event
.
pagination
,
rules
:
{
list
:
{
// CRUD权限
create
:
false
,
read
:
true
,
update
:
false
,
delete
:
false
,
// 是否允许使用聚合
aggregate
:
false
,
// 是否允许使用联表查询,联表查询时blockedField不会对被连接的集合生效
lookup
:
false
,
// 使用聚合时blockField不会覆盖客户端的project,而是在聚合第一阶段插入project,不使用聚合时会在最后阶段插入一个field(会覆盖客户端的field方法)
blockedField
:
[
'
extra
'
],
// 不使用聚合时mixinCondition会在没有where的时候在collection方法之后插入where,有where时会跟where条件进行合并,取原条件且mixinCondition。使用聚合时会在第一阶段插入match使用混入的条件,如果有blockedField会插入在blockedField对应的project之前
// CRUD权限
create
:
false
,
read
:
true
,
update
:
false
,
delete
:
false
,
// 是否允许使用聚合
aggregate
:
false
,
// 是否允许使用联表查询,联表查询时blockedField不会对被连接的集合生效
lookup
:
false
,
// 使用聚合时blockField不会覆盖客户端的project,而是在聚合第一阶段插入project,不使用聚合时会在最后阶段插入一个field(会覆盖客户端的field方法)
blockedField
:
[
'
extra
'
],
// 不使用聚合时mixinCondition会在没有where的时候在collection方法之后插入where,有where时会跟where条件进行合并,取原条件且mixinCondition。使用聚合时会在第一阶段插入match使用混入的条件,如果有blockedField会插入在blockedField对应的project之前
mixinCondition
:
{
time
:
dbCmd
.
gt
(
1000000000000
)
},
// 更多用法请参考下方参数说明文档
}
}
})
return
res
// 更多用法请参考下方参数说明文档
}
}
})
return
res
}
catch
(
e
)
{
return
{
code
:
10001
,
msg
:
e
.
message
}
}
}
}
};
```
...
...
@@ -161,13 +163,13 @@ exports.main = async (event, context) => {
rules下可以对不同的集合配置不同的权限,比如以下规则代表”集合list允许插入,集合goods允许更新“
```
js
{
list
:
{
create
:
true
,
{
list
:
{
create
:
true
,
},
goods
:
{
update
:
true
}
}
}
```
...
...
@@ -196,29 +198,29 @@ rules下可以对不同的集合配置不同的权限,比如以下规则代表
回调参数如下:
```
js
{
{
state
:
{
useAggregate
,
// 是否使用了聚合
useLookup
,
// 是否使用了联表查询
type
,
// 操作类型,可能的值为create、read、update、delete
collection
,
// 当前集合名
methodList
// 使用到的方法列表
},
},
stage
:
{
method
,
// 当前阶段方法名
args
// 当前阶段方法参数
},
exec
// 已经组装的查询指令
},
exec
// 已经组装的查询指令
}
```
回调方法中可以通过返回结果修改数据库指令,例如以下示例在skip之后插入一个limit
```
js
afterStageAppend
:
function
({
state
,
stage
,
exec
afterStageAppend
:
function
({
state
,
stage
,
exec
})
{
if
(
stage
.
method
===
'
skip
'
)
{
return
exec
.
limit
(
1
)
...
...
@@ -238,4 +240,4 @@ afterStageAppend: function({
+
使用聚合时会在第一阶段插入match使用混入的条件,如果有blockedField会插入在blockedField对应的project之前
-
关于联表查询
+
连接的集合也会受所配置的权限规则中对应集合规则限制,主要是read,目前连接的集合不会受blockedField限制
\ No newline at end of file
+
连接的集合也会受所配置的权限规则中对应集合规则限制,主要是read,目前连接的集合不会受blockedField限制
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录