如何在同一运行时间内多次重复使用 Substrate 托盘?

Nik*_*kin 3 parity blockchain substrate

我想在同一个运行时内有多种货币。有Balances托盘插入默认节点模板,但如果我这样做是正确它只能处理一种货币。

如何多次重复使用托盘?

kia*_*gma 6

所有托盘都可以实例化。这是专门为适合多实例模型的模块而设计的,包括Balances. 多币种链是此功能的教科书示例。基底节点中的集体托盘已经像这样工作了。看看它是如何在和 甚至中被命名两次(一次为council,一次为technical committee)。GenesisConfigconstruct_runtime! {}

这里有一个关于如何完成所有这些操作的教程,但如果您尝试在 Substrate Master 上尝试,预计会发生一些变化,这是针对 1.0 的。但概念应该是相同的。


Jos*_*rff 6

Pallet 可以实例化,这允许您在同一个运行时中包含多个实例。底物配方包含的书面记录上创建实例化的托盘以及这些例子:

  • 没有默认实例的实例化托盘示例
  • 具有默认实例示例的可实例化托盘
  • 如何在运行时示例中包含可实例化的托盘

方便的是,您感兴趣的 Balances 托盘已经是可实例化的,您可以从(以及其他地方)它的 configuration trait看到。

为了完整起见,还值得一提的是 Substrate 附带资产托盘,这是在单个运行时处理多个令牌的另一种方法。

如果您只需要两个代币,最好使用 Balances 托盘的两个实例。如果您想要多个代币并且能够在以后添加更多代币,那么资产是最好的。