(五)eos开发实战dapp+游戏--编译eos.token table空,查看用户币Error 3060003: Contract Table Query Exception

开言:此教材只是个人学习过程记录自己理解和各种坑如有问题可提出修正,个人注重是开发动手,小白,写也是为了重复加深印象,目标此教学习实现开发一个EOS小游戏,坚持.......
 环境: Mac+EOS-1.3.0

任务:发币bug,上章发币编译自带eos.token 发币查找用户币信息时候出现Error 3060003: Contract Table Query Exception ,很是奇怪发币是成功但是查看不到用户币信息。查看eos.token abi文件发现table空,也就是数据库没有存成功!

解决:查看eos.token源码。

1.表名定义需要使用 @abi table table_name i64 注解,写在struct结构体定义的上面一行。 

2.需要注意就是currency_stats , eos表名索引用的是uint64_t,跟account_name一样,只能是12位字符,字母和数字1-5,不能有下划线.如果是普通函数名,随便写,但是加上action注解,就只能是那个规则了,不然也报错.

修改:

 

再次发布合约可能会碰到问题,同一个账户重复发布相同的合约,即使代码做了修改还是可能会碰到问题。这时,可以另外随便选择一个合约发布一次,然后再发布更新后的合约。

猜你喜欢

转载自blog.csdn.net/u010665359/article/details/82933654
今日推荐