uniapp——uicloud云服务(增删改查)

一、查询

效果图:

 1、云服务端的数据为:

{
    "number": "1",
    "shopping_num": "ctx_123",
    "name": "经络仪",
    "classification_id": "理疗仪器",
    "hot_sale": "热卖品",
    "commodity_unit": "商品单位",
    "counter_price": "",
    "price": "500",
    "introduction": "我是00"
}

 2、视图代码

const db = uniCloud.database();
const dbCmd = db.command;
const dbCollectionName = 'wy-shopping'; //你的数据库表名

在onready里面加上请求加载数据的代码:

this.$refs.udb.loadData() //重要:这一句加载数据,udb指组件的ref值
<view class="uni-container">
			<!-- 后台请求回来的数据在v-slot:default的data里 -->
			<unicloud-db ref="udb" collection="wy-shopping"
				field="number,shopping_num,name,classification_id,hot_sale,commodity_unit,counter_price,price,introduction"
				:where="where" page-data="replace" :orderby="orderby" :getcount="true" :page-size="options.pageSize"
				:page-current="options.pageCurrent" v-slot:default="{data,pagination,loading,error,options}"
				:options="options" loadtime="manual" @load="onqueryload">
				<uni-table ref="table" :loading="loading" :emptyText="error.message || $t('common.empty')" border stripe
					type="selection" @selection-change="selectionChange">
					<!-- 表头 -->
					<uni-tr>
						<uni-th align="center" filter-type="search" @filter-change="filterChange($event, 'number')"
							sortable @sort-change="sortChange($event, 'number')">编号</uni-th>
						<uni-th align="center">商品编号</uni-th>
						<uni-th align="center">商品名称</uni-th>
						<uni-th align="center">分类id</uni-th>
						<uni-th align="center">热销标识</uni-th>
						<uni-th align="center">商品单位</uni-th>
						<uni-th align="center">专柜价格</uni-th>
						<uni-th align="center">零售价格</uni-th>
						<uni-th align="center">商品详细介绍</uni-th>
						<uni-th align="center">操作</uni-th>
					</uni-tr>
					<!-- 表单列表内容 后台请求回来的数据在data里-->
					<uni-tr v-for="(item,index) in data" :key="index">
						<uni-td align="center">{{item.number}}</uni-td>
						<uni-td align="center">{{item.shopping_num}}</uni-td>
						<uni-td align="center">{{item.name}}</uni-td>
						<uni-td align="center">{{item.classification_id}}</uni-td>
						<uni-td align="center">{{item.hot_sale}}</uni-td>
						<uni-td align="center">{{item.commodity_unit}} </uni-td>
						<uni-td align="center">{{item.counter_price}} </uni-td>
						<uni-td align="center">{{item.price}} </uni-td>
						<uni-td align="center">{{item.introduction}} </uni-td>
						<!-- 操作(修改、删除) -->
						<uni-td align="center">
							<view class="uni-group">
								<button @click="navigateTo('./edit?id='+item._id, false)" class="uni-button" size="mini"
									type="primary">{{$t('common.button.edit')}}</button>
								<button @click="confirmDelete(item._id)" class="uni-button" size="mini"
									type="warn">{{$t('common.button.delete')}}</button>
							</view>
						</uni-td>
					</uni-tr>
				</uni-table>
				<!-- 上一页--下一页 -->
				<view class="uni-pagination-box">
					<uni-pagination show-iconn show-page-size :page-size="pagination.size" v-model="pagination.current"
						:total="pagination.count" @change="onPageChanged" @pageSizeChange="changeSize" />
				</view>
			</unicloud-db>
		</view>

注意:field里的字段要跟后台的数据字段对应上

查找==>方式二

db.collection('wy-shopping').limit(500).get().then(res => {
					console.log("查询wy-shopping表所有", res)
					
				}).catch(err => {
					
				})

二、增加

db.collection('数据库表名称').add('要增加的数据,一般是{}形式').then((res) => {
					
				}).catch((err) => {
					
				}).finally(() => {
					uni.hideLoading()
				})

三、删除

this.$refs.udb.remove(id, {
					success: (res) => {
						this.$refs.table.clearSelection()
					}
				})

四、修改

db.collection('wy-shopping').doc('表中的_id的值').update('想要修改成的数据,一般是{}形式').then((res) => {
				   
				}).catch((err) => {
				   
				}).finally(() => {
				   
				})

附言:

1、报错:数据库验证失败:提交的字段["number","shopping_num","name","classification_id","hot_sale","commodity_unit","counter_price","price","introduction"]在云端数据表的schema文件中不存在

解决办法:在云数据库表里,(可参考其他表)在下面红框里补全 "number","shopping_num" 等等

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wy313622821

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值