Moonbeam入门开发|第11课:NominationDAO DApp(四)

[Web3] 基础第4篇: 区块链的组织结构 适用于大规模数据过滤(如 区块链、数据库、搜索引擎)低存储需求、高速查询的场景需要注意不能删除数据(标准版本) → 计数布隆过滤器解决存在误判(False Positive) → 适用于 非精确查询布隆过滤器以 高效存储和快速查询 在 区块链、分布式存储和大数据处理 领域有广泛应用。 阅读详情

Moonbeam是Polkadot网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在Moonbeam上部署现有的Solidity智能合约和Dapp前端。

作为在Polkadot网络上的平行链,Moonbeam也将受益于Polkadot中继链的共享安全性以及与其它Polkadot相关链的连接性。

为了使更多对Moonbeam技术充满热情和好奇的开发者能够参与进来,OneBlock+与Moonbeam共同推出了《Moonbeam入门 - 轻松开始跨链Solidity开发》课程,已于8月26日正式开课。上次我们介绍什么是Moonbeam平台跟它的一些特性,这节课就让我们来动手学习Moonbeam入门开发。以下是第十一课文字版内容回顾。

本节课课程内容: 

1. 完成编写NominationDAO.sol

2. 添加质押提名功能

3. 交互测试 + 使用Subscan确认质押状态

添加质押提名功能

质押我们是通过预编译来实现的

本期程序文件和脚本地址

https://github.com/hyd628/OneBlockCourseScripts/tree/main/Week11

用remix打开NominationDAO.sol

Minimum nomination stake =5 ether Moonbeam上最小的提名量是5个Dev

初始化:

Target = 我们要提名的收集人节点, Constructor 添加了target 

Staking 预编译地址,可在开发者文档里找到

add_stake()

检查:我们的合约是否已经对某一个收集人节点在提名

通过: staking接口来检查= staking.is_nominator 

如已有提名用:nomination_bond_more 给现有提名加一个数额

如还没有提名:检查智能合约余额是否高于5, 大于5可以开始提名

cash_out()

先把会员Dev解除质押,然后在把Dev DAO 转到会员指定钱包地址

提名总质押额-会员提名额 >/= 5: 使用staking.nominator_bond_less 解除质押。不需要取消现有提名。无延迟打回到DAO钱包。 

提名总质押额-会员提名额 <5: 使用staking.revoke_nominator 完全取消提名。需等到下一轮提名才能打回到钱包。

部署和功能测试

Subscan 浏览器地址 - Moonbase Alpha

https://moonbase.subscan.io/

测试准备工作

- 需要两个测试钱包

- 第一个钱包需要有 > 5.1 DEV

- 第二个钱包需要有 > 1 DEV 

获取方式:测试Dev水龙头

1. 加入Moonbeam Discord:

https://discord.com/invite/ssvKu6Un8v

2. 在Miscellaneous/moonbase-faucet频道里输入:

!faucet send <钱包地址>

3. 水龙头里一次只能领5枚,若需要更多Dev请在Discord社群联系管理员

常见错误

图片

  • 没有通过一个Assert或Require,所以会耗掉所有Gas上限

  • 有可能是权限问题,注意只有部署合约的账户有管理员权限

  • 也有可能是质押数额小于最小额之类的

图片

  • 在调用一个非“payable”的方法时,Remix的“Value”数据字段不是“0”

相关资料

第十一课课程视频链接:https://jhp.h5.xeknow.com/s/1R8rna

第十一课课程作业链接:https://wj.qq.com/s2/9210622/2712/

GitHubFAQ:https://github.com/hyd628/OneBlockCourseScripts

Moonbeam网站:moonbeam.network

MoonbeamGitHub:github.com/PureStake/moonbeam

Moonbeam中文开发者文档:https://docs.moonbeam.network/cn/

MoonbeamDiscord:https://discord.gg/PfpUATX

课程回顾

第一课:课程导读
第二课:环境配置与安装运行 Moonbeam 节点
第三课:Truffle和连接MetaMask
第四课:使用Truffle在Moonbeam部署智能合约
第五课:介绍使用Remix IDE部署ERC-721(NFT)合约
第六课:介绍和使用web3.js与Moonbeam交互(上)
第七课:介绍和使用web3.js与Moonbeam交互(下)
第八课:NominationDAO DApp(一)
第九课:NominationDAO DApp(二)
第十课:NominationDAO DApp(三)


关于Moonbeam
Moonbeam是波卡(Polkadot)网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在Moonbeam上部署现有的Solidity智能合约和Dapp前端。作为在波卡(Polkadot)网络上的平行链,Moonbeam也将受益于波卡(Polkadot)中继链的共享安全性以及与其它波卡(Polkadot)相关链的连接性。Moonbeam由PureStake团队开发,目前正在预上线阶段,主网计划于2022年第一季度上线。

如需了解更多信息,请访问:Moonbeam | Polkadot Smart Contract Platform

关于Moonriver
Moonriver是Moonbeam的同行网络,旨在为激励实验提供永久性的测试环境。新上线项目的代码将优先部署到Moonriver,在其真实的经济环境下经历一系列的测试与实验验证。当验证完成并通过测试之后,项目代码才可正式部署至波卡上的Moonbeam。

如需了解更多信息,请访问:Moonriver - Solidity Smart Contracts on Kusama

更多 Moonbeam 信息 
官网: Moonbeam | Polkadot Smart Contract Platform
微博:Sina Visitor System
twitter: https://twitter.com/MoonbeamNetwork
Telegram: https://t.me/moonbeam_CN
Discord: https://discord.gg/skPfXvJWG7
中文电报群助手:@MoonbeamSister

glibc手动升级高版本导致系统(RedHat/Centos)异常(无法开机等)的解决方法(回退低版本glibc) 我的系统是Redhat7.6, 理论上Redhat7/Centos7都可以使用该方法解决问题。 首先慎重提醒各位:glibc升级会产生无法预料的后果!由于Android NDK需要高版本的glibc才可以使用,所以作死手动去更新了glibc2.18,使得重启系统后图形界面消失。(Redhat/Centos升级此类安装包最好用yum升级,因为系统内的程序对他们的依赖很大,升级会导致大部分程序无法使用... 阅读详情

相关推荐

STM32F103循迹小车PID调参实战:手把手教你整定舵机PD与电机PI参数

本文详细介绍了基于STM32F103的循迹小车PID调参实战,重点讲解舵机PD控制与电机PI参数的整定技巧。通过硬件选型、基础测试、四步调参法和分段控制策略,帮助开发者解决小车蛇形走位等问题,提升循迹性能。文章还分享了高级调试技巧和典型问题排查方法,适用于智能车竞赛和机器人开发。

weixin_42524226的博客 361

Moonbeam入门开发|第9课:NominationDAO DApp (二)

Moonbeam是Polkadot网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在Moonbeam上部署现有的Solidity智能合约和Dapp前端。 作为在Polkadot网络上的平行链,Moonbeam也将受益于Polkadot中继链的共享安全性以及与其它Polkadot相关链的连接性。 为了使更多对Moonbeam技术充满热情和好奇的开发者能够参与进来,OneBlock+与Moonbeam共同推出了《Moonbeam入门 —

Moonbuilder的博客 378

CARLA 0.9.15从零开始:环境搭建与基础场景实战指南

本文是CARLA 0.9.15从零开始的完整环境搭建与基础运行教程。详细介绍了在Linux系统下配置Python环境、下载安装CARLA核心软件包、启动服务器以及运行第一个基础场景的步骤。重点演示了如何通过Python客户端脚本生成随机车流,并手动控制EGO车辆在仿真城市中行驶,为自动驾驶算法开发构建了坚实的仿真测试基础。

weixin_29053383的博客 779

Moonbeam入门开发|第8课:NominationDAO DApp (一)

Moonbeam是Polkadot网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在Moonbeam上部署现有的Solidity智能合约和Dapp前端。 作为在Polkadot网络上的平行链,Moonbeam也将受益于Polkadot中继链的共享安全性以及与其它Polkadot相关链的连接性。 为了使更多对Moonbeam技术充满热情和好奇的开发者能够参与进来,OneBlock+与Moonbeam共同推出了《Moonbeam入门 —

Moonbuilder的博客 388

新能源充电桩充电枪口标准

建立的标准确保了新能源汽车充电的安全性、兼容性和效率,促进了新能源汽车产业的发展。

网络安全的研究者、新能源行业的追求者 4689

移动通信基础(13)TDL、CDL、信道相关性

参考《U型槽无线信道多径传播特性测量与建模方法的研究》、《5G信号源中的信道模拟与仿真研究》衰落衰落理解为信号幅度在时间和频率上的不断波动,是无线信道一个重要的恶化特性。信道幅度恶化的两个主要来源分别是加性噪声和信号衰落,高斯白噪声信道模型就是典型的加性噪声,信号衰落引起的是乘性的信号扰动,与加性噪声从原理上完全不同。信道的频率选择性衰落组为无线信道的重要特征之一,是人们进行无线系统设计考虑的重要因素,决定了导频隔间的大小。...

tybAly的博客 2万+

Moonbeam 入门开发|第12课:智能合约验证和课程总结

Moonbeam是Polkadot网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在Moonbeam上部署现有的Solidity智能合约和Dapp前端。 作为在Polkadot网络上的平行链,Moonbeam也将受益于Polkadot中继链的共享安全性以及与其它 Polkadot 相关链的连接性。 为了使更多对Moonbeam技术充满热情和好奇的开发者能够参与进来,OneBlock+与Moonbeam共同推出了《Moonbeam入..

Moonbuilder的博客 530

python 识别滑块验证码

博客来源于: https://www.cnblogs.com/wyh0923/p/16528354.html # -*- coding: utf-8 -*- # https://gov.pkulaw.cn/ 1. import io 2. import json 3. from pathlib import Path 4. from PIL import Image 5. import bas...

2102

Moonbeam入门开发 | 第十课: NominationDAO DApp (三)

Moonbeam是Polkadot网络上的以太坊兼容智能合约平台,为原生互操作应用程序的开发提供便利。通过其以太坊兼容性,开发者能够以最低程度的代码调整在Moonbeam上部署现有的Solidity智能合约和Dapp前端。 作为在 Polkadot网络上的平行链,Moonbeam也将受益于Polkadot中继链的共享安全性以及与其它Polkadot相关链的连接性。 为了使更多对Moonbeam技术充满热情和好奇的开发者能够参与进来,OneBlock+与Moonbeam共同推出了《Moonbeam入门 —

Moonbuilder的博客 308

反激电源反馈环路设计:从TL431+PC817原理到动态补偿实战

本文深入解析了反激电源中由TL431和PC817构成的经典反馈环路设计。从静态工作点计算到动态补偿实战,详细阐述了如何通过Type II补偿网络优化环路稳定性与动态响应,并分享了应对光耦CTR离散性、布局噪声等常见调试难题的实用技巧,帮助工程师设计出高性能、高可靠的开关电源。

moon9的博客 701

基于 YOLOv26 的食品包装缺陷检测系统:智能视觉质检方案

本文提出了一种基于YOLOv26深度学习的食品包装缺陷智能检测系统。该系统能够自动识别多种常见包装缺陷,包括密封不良、破损、污染、标签错误等8类问题。相比传统人工检测方法,该系统具有高精度、多类别分类、实时推理等优势。文章详细介绍了系统架构,包含数据采集、预处理、YOLOv26检测模型和后处理四个核心模块,并提供了完整的环境配置和数据处理代码实现。该系统为食品包装行业提供了一种高效、准确的智能视觉质检解决方案。

一键难忘的博客 685

开发课程|最近很火的DAO怎么解?

DAO Decentralized Autonomous Organization 去中心化自治组织 最近DAO很火,例如近期的ConstitutionDAO。 这家DAO在不到72小时内从17437位用户那里筹集了11600枚ETH(价值近4700万美元),用于参与在苏富比拍卖行进行的美国宪法副本拍卖。 虽然最终ConstitutionDAO的雄心壮志以竞拍失败告终于Citadel创始人Ken Griffin,但通过DAO筹集资金的方式引起业内的广泛讨论。 (以上图片来自C..

Moonbuilder的博客 1369

影楼精修-高低频磨皮算法解析

本文介绍了像素蛋糕软件中的高低频磨皮算法原理及实现思路,抛砖引玉。

Trent1985的专栏 2259

期货保证金占用变多,怎样找出哪张合约增得最多?

盘中看了两次期货账户,第二次发现保证金占用多了。眼下占用最大的合约很显眼,但它不一定是这段时间增得最多的。如果复盘想知道“先查哪张”,要按前后差额排,不是按第二次的金额排。

weixin_49134609的博客 215

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

高可用分布式存储架构设计及其应用

节点间维持秒级心跳,同时引入Phi accrual failure detector:当某节点心跳间隔的分布偏离历史基线超过阈值时,判定为“疑似故障”,提前触发副本状态检查,而非被动等待固定超时。同城双AZ部署,指令通道的Raft副本组跨AZ分布,AZ间RTT控制在1.5 ms以内,确保多数派写入的延迟增量可接受。这一取舍的直接后果是:同城单AZ故障时,指令通道经历约2—5 s的写入暂停,遥测通道保持可用但可能出现秒级的数据空洞,由车端缓冲补齐。,使异地副本常态化接近同步状态,压缩故障切换时的数据差距。

jcgu的专栏 167

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

深入理解 Leaf-Spine:从网络拓扑到 AI 数据中心 Fabric

传统数据中心网络以树形三层架构为主,但随着东西向流量激增,其层级多、路径长、扩展难等问题凸显。为此,Leaf-Spine叶脊架构应运而生,通过全互联的扁平化设计,实现多路径转发、高带宽、低时延与灵活横向扩展。结合ECMP负载分担、Underlay/Overlay分离架构及VXLAN/EVPN技术,该架构有效支撑云计算、AI训练等高密度内部通信需求。其核心价值在于:网络设计需匹配业务流量模型,强调可预测性、可靠性与可扩展性。未来,叶脊架构将持续演进,成为高性能数据中心的基石。

一名热爱技术、专注实践的工程师,拥有一项实用新型专利及一项软件著作权。曾获国家级奖项7项、省级奖项30余项。专注网络技术与 AI Infra 领域,持续探索技术创新与工程实践,记录学习成长,分享技术经验,在探索中突破,在实践中精进。 290

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

空圈容错・优快云 站点技术架构信任链诊断

本文为基于公开故障现象的黑箱架构推演报告,聚焦“监控健康但用户访问异常”共性问题。提出C/M/V/P四层可达性分析框架,强调V层需满足数据源、方法、环境三异才具仲裁能力。通过R1–R10探针识别架构风险,揭示同源校验、配置共担、降级粗放等隐患。诊断指出:进程存活≠链路通畅,200状态码≠内容正确。配套8问自测清单与∅_safe分级降级方案,推动从“全好/全崩”到“半坏可控”的可观测跃迁。所有推断假说需依赖图谱与压测验证,不构成线上定论。

Liaiyang66的博客 385

期货合约还有历史K线,就表示现在还能交易吗?

打开以前保存的期货研究资料,某个合约的K线仍能正常显示,过去的价格、成交量也都在。看着熟悉的图,容易顺势觉得:既然还能看,这个合约应该仍可作为当前交易对象。但图里保存的是过去发生过什么,当前合约状态回答的是它现在处于什么生命周期。历史K线仍在,与合约已经下市可以同时成立。对研究者来说,更有用的处理不是在“继续盯它”和“删掉旧图”之间二选一,而是把历史档案与当前关注对象分开。TqSdk提供的合约下市标志,可以帮助把这层区别标明白。

weixin_49134609的博客 185

FPGA 与加密行业:从算法加速到可信硬件的完整技术图谱

本文系统探讨FPGA与密码学的深度交叉,揭示其在加密加速、区块链基础设施、零知识证明及后量子密码中的关键作用。从底层硬件特性到工程实践,分析对称加密、公钥算法、零知识证明等负载的FPGA加速优势,强调其高能效、低延迟与灵活可重构的特性。结合当前密码学复杂度上升与硬件竞争加剧的趋势,指出FPGA是算法验证与高性能实现的理想载体,为安全计算提供高效硬件支撑。

weixin_49780322的博客 251

想调用证券公司 API 做股票数据分析,Python 应该如何接入行情?

想通过证券公司 API 做股票数据分析,首先需要区分交易接口和行情接口:交易接口负责委托、撤单和账户查询,行情接口负责提供股票价格、成交量等市场数据。对于历史行情研究,真正影响结果可靠性的,不只是能否拿到收盘价,还包括复权方式、交易日期排序、字段类型以及数据完整性。如果只需要历史行情、技术指标和基础选股研究,可以先使用合适的行情数据 API。A:取决于分析目的。A:可以作为研究程序的基础,但还需要补充数据时效性检查、交易日历管理、指标有效性验证、策略回测和风险控制,不能仅凭一个均线条件直接进行实盘决策。

2601_96694965的博客 191

期货成交额变大,为什么成交手数反而少了?

比较同一期货合约两个交易日的成交情况,可能看到:成交额比前一天高,成交手数却少了。若把成交额大直接理解成“交易得更多”,这两项看起来就会互相打架。其实,金额和手数不是同一把尺子。手数描述成交数量,金额还包含成交价格及相应计量口径的影响。两者反向变化并不构成逻辑矛盾。用TqSdk整理这类观察,关键不是挑一个看起来更大的数,而是把原始量、额及各自口径留下来,回答不同的问题。

shinnyringo的博客 147

期货分钟线中间少了一段,怎么查是不是休市?

复盘一份已经保存的期货分钟线,10:14 后直接跳到 10:30,另一处却是 10:42 后跳到 10:44。屏幕上两处都没连起来,处理起来并不一样:如果当天确实在第一段休息,不用补;如果 10:43 落在交易时段里,则要回查原始记录和样本覆盖。

lisiccwss的博客 145

国内哪些平台提供比较全的金融数据接口?Python 量化开发如何选型?

国内金融数据接口众多,选型需结合量化需求,避免仅凭名气选择。以QuantDash为例,通过SDK获取前复权日K线后,必须严格校验日期排序、价格有效性及字段完整性,再进行动量计算。关键在于:数据质量决定分析可靠性,接口能力≠实际可用性,需建立数据验证流程,确保研究结果可信。

quantdash_cc的博客 251

从 NEAR Intents 事件看 NEAR 智能合约安全

2026年9月29日至10月1日,攻击者利用NEAR Intents存款退款处理中的校验缺陷,通过填充代币和恶意receiver合约触发超额退款请求,使回调失败后内部余额未被撤销,造成缺乏资产支持的可花费余额。攻击者据此从BNB Chain上的HOT Bridge金库七笔提现共转出3,865,021 USDT。项目方于10月2日部署修复、10月7日移除存款通知功能,并于同日宣布资金全额归还,后续事后报告确认受影响用户已获补偿。

BlockSec的博客 274

去哪里下载股票历史 K 线数据?Python 获取日线行情与本地保存实践

通过QuantDash SDK获取600519.SH历史日K线数据,结合pandas完成字段验证、价格逻辑检查与异常处理,确保数据完整性与一致性后,将清洗后的行情数据保存为CSV文件,并附带元信息(如复权方式、下载时间等),实现可复现、可追溯的量化数据管理。

2601_96694965的博客 235

期货期权复盘,标的那张K线该怎么找?

复盘一张以前观察过的期货期权,自选里可能同时有同品种的近月、远月和主连。哪张走势最热闹,并不决定它是不是这张期权的标的。要解释那段期权记录,先找到它对应的具体期货合约,再找那张合约的图。

zhangnihi的博客 140
上一篇: Moonbeam为何要在波卡上再造一个以太坊——论两者的不同之处
下一篇: Moonbeam 入门开发|第12课:智能合约验证和课程总结
Web3 MoonBuilder
博客等级 码龄5年 568粉丝 381原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值