看不懂的UBT
看不懂的UBT
  • 发布:2021-09-24 17:48
  • 更新:2023-03-22 11:08
  • 阅读:610

云函数怎么设置,只能查看登录用户自己发布的内容

分类:uniCloud

我设置了 "read": "doc.user_id == auth.uid", 怎么不管用啊。提示权限未通过。要不要怎么设置啊?卡了一天了。
以下是数据表:
"bsonType": "object",
"required": [],
"permission": {
"read": "doc.user_id == auth.uid",
"create": "auth.uid != null",
"update": false,
"delete": false
},
"properties": {
"_id": {
"description": "存储文档 ID(用户 ID),系统自动生成"
},
"user_id": {
"bsonType": "string",
"description": "收藏者id,参考uni-id-users表",
"forceDefaultValue": {
"$env": "uid"
},
"foreignKey": "uni-id-users._id"
},

2021-09-24 17:48 负责人:无 分享
已邀请:
DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

用uni-id了吗?客户端存token了吗?

  • 看不懂的UBT (作者)

    我是用 uni-start 改的。uni-id token 应该都有啊

    2021-09-26 17:35

  • DCloud_uniCloud_WYQ

    回复 Q***@126.com: 连接的是云端还是本地云函数,schema在本地还是云端改的?有其他字段权限影响吗?单独写一段数据库查询语句会报权限问题吗?

    2021-09-26 20:12

1***@qq.com

1***@qq.com

加上加黑部分就好了,我也是搞这个一天了,最后在B站官网视频找到了!
<unicloud-db where="user_id == $cloudEnv_uid" v-slot:default="{data, loading, error, options}" collection="db-diary">
<view v-if="error">{{error.message}}</view>
<view v-else>
{{data}}
</view>
</unicloud-db>

DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

此问题已解决,schema内配置的权限是限制jql数据库操作的,而不是用来作为条件限制数据返回的。因此需要条件匹配的数据本身能满足权限限制才可以进行数据库操作,否则会被权限校验拒绝

  • 1***@qq.com

    我当时添加where="user_id == $auth.uid"也不能使用,必须是where="user_id == $cloudEnv_uid"才可以,但这个$cloudEnv_uid一般是想不到的

    2023-03-22 13:27

要回复问题请先登录注册