thinkjs中修改默认主键

报错信息:

{ Error: ER_BAD_FIELD_ERROR: Unknown column 'a_role.id' in 'field list'

还原场景:

a_role这张表没有自增的id,主键为roleid.如果在thinkjs的控制器中写查询这张表的数据sql时,就出现了这样错误。

解决方法:

修改后的代码:

 1 async listAction() {
 2         let getData = this.get();
 3         let role = this.model('a_role');
 4         role._pk = 'roleid';
 5         let whereobj = {};//状态:1:正常 ;-1:禁用
 6         if (getData.roleid) {//角色ID
 7             whereobj['roleid'] =  getData.roleid;
 8         }
 9         if (getData.rolename) {//角色名称
10             whereobj['rolename'] = ['like', '%' + getData.rolename + '%'];
11         }
12         if (getData.state && getData.state != -99) {
13             whereobj.state = getData.state;
14         }
15         let result = await role.field('roleid,rolename,state')
16             .where(whereobj)
17             .order("roleid asc")
18             .page(getData.pageNumber, getData.pageSize)
19             .countSelect();
20         return this.json({ total: result.count, rows: result.data });
21     }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值