代码如下:
git clone -b polkadot-v0.9.30 --depth 1 https://github.com/substrate-developer-hub/substrate-node-template.git
解释一下参数:-b polkadot-v0.9.30 表示我们选择v0.9.30这个分支的代码, --depth 1 表示我们只选择当前分支下的最近1次提交,这样可以保证我们不会下载很多历史代码,没必要。
如果不懂polkadot版本和substrate版本之间的对应关系,可以查看这个网站:
下载成功后,就会在本地看到一个文件夹,打开文件夹,内部的文件如下图所示

网站链接:
https://polkadot.js.org/apps/#/explorer
这个网站监听本地的9944端口,当我们在本地运行区块链节点的时候,这个网站就会记录出现数据,现在因为没有run 节点,所以不会有任何显示, 右上角会持续显示“waiting to establish a connection …”

现在,我们启动下载好的template-node.(attention! 如果启动不起来,查看报错信息,多半是rust环境有问题,你所碰到的问题,都可以在网上找到解决方案),因为我做这个项目的时候是2023年的3月份,所以使用的rust版本如下:
rustup install nightly-2023-01-01
rustup target add wasm32-unknown-unknown --toolchain nightly-2023-01-01
cargo +nightly-2023-01-01 build --release
编译成功后,启动一个测试节点,下面代码的意思是,编译成功后的二进制文件会出现在./target/release/node-template中,我们以dev的方式启动,同时添加--tmp选项,表示当我们停止节点之后,节点的数据将全部消失。
./target/release/node-template --dev --tmp
先在本地run 一下template-node, 看看能否成功出块。
pallet就类似于我们写代码的时候经常写的module, 每一个pallet 代表着一个功能模块;这些pallet 最后会在runtime包中进行调用,最后runtime包的代码会被编译成wasm(wasm是一堆二进制文件),等部署到链上的时候机会执行我们在runtime中的逻辑。
本次只是一个小的demo for coding a pallet, d
如果没有按照本次教程运行自己的节点没关系,我刚开始学rust的时候也是经常出错,多看官方的文档;

