首先,在Hbuilderx建立uniapp项目时,我使用了默认模板,所以并没有建立uniCloud云服务,也就是说没有与其相关联。
所以,先想办法建立以下uniCloud与服务吧:
在项目名上右键选择创建uniCloud云开发环境,里面包含阿里云,腾讯云(据说,阿里云后续操作简单点,我就使用的是阿里云)
展开uniCloud:
一个是用来放云函数的,一个是用来放云数据库的。
当然,这是我关联云服务之后的截图,如果,没有关联的话,是没有pk-app01的。所以,接下来右键uniCloud文件夹,里面选择关联云服务空间或项目,接下来就会出现这个弹窗:
pk-app01在没有关联的时候是没有的,所以,就得新建一个,点击新建-------》好了,可以用实名制认证了,上传身份证就好了。
之后,你就可以新建
所以,我的pk-app01就新建好了,也就看到了我之前的截图出现的了。
点开pk-app01:
如下图:business和user是我新建的表:
哎,本来不想记录这么多废话的。
首先,将鼠标放在表的名字上,可以选择更改表名,或者删除。
其次,每一个表都有三个逻辑:数据,索引,表结构
数据:增,删,改,查记录(一般会直接使用前端代码增加,否则就变得没意义了)
索引:我暂时未用到,到时再说吧。
表结构:这个可以在进入编辑,写schame(json格式),这个比较重要。当然,我比较喜欢在Hbuilderx里面写好,然后在文件或者文件夹上面右键上传。
好了,说说我的错误吧:
const db = uniCloud.database() // 获取数据库
const user = db.collection('user') // 创建user表对象
user.add({
phone:this.registerPhone,
password:this.password
}).then((res)=>{
console.log(res);
}).catch((err)=>{
console.log(err);
})
权限校验未通过!!!
诶,该好好读读官网了》》》
人家都说的好清楚了,
对于表来说,permission有create,update,delete,count,read权限了,通过改变他的true和false来控制就好了,
对于字段来说,有write,read权限。
所以,当我使用jQL语法的时候,要好好的赋予人家权限呀!!!
所以,插入成功!!
最后,,,,,
还有一个问题:
在我的字段中存在一个password字段,我给他的bsonType类型为“password”的时候,报这个错:
怎磨回事???
这不是权限的问题吗??
我把他的所有permission都改为了true呀,,,所以,这是咋回事??
好吧,,,,我飘了。。。。
schame中的bsonType支持的基础类型:
- String:字符串
- Number:数字
- Object:对象
- Array:数组
- Bool:布尔值
- GeoPoint:地理位置点
- GeoLineStringL: 地理路径
- GeoPolygon: 地理多边形
- GeoMultiPoint: 多个地理位置点
- GeoMultiLineString: 多个地理路径
- GeoMultiPolygon: 多个地理多边形
- Date:时间
- Null:相当于一个占位符,表示一个字段存在但是值为空。
官方链接,yyds