显然,我必须有一些通过我的 dapp 公开的外部功能,以便当他们点击并支付会员费用时,在运行时,会员托盘会将该用户添加为会员。谁能证实我对此的看法?
你可以很容易地做到这一点。pallet_membership
只是成员的容器。正如您将在 中找到的pallet_membership::Config
,可以将特殊来源定义为有权添加或删除成员的人。
您需要一个新托盘来处理加入新会员的付款。让我们称之为pallet_membership_payment
. 一旦pallet_membership_payment
收到正确的付款,它就可以调用pallet_membership::add_member
任何来源来满足它。并不是说即使它的原始要求add_member
是EnsureRoot
,pallet_membership_payment
如果它是这样编码的,它实际上仍然可以克服它。
我是否应该创建一个智能合约来处理成员逻辑并将其部署在边缘软件或其他已经存在的平行链上。
这个问题的答案实际上取决于您的应用程序在通过费用处理此成员资格之后还有多少进一步的逻辑。此外,这取决于您的智能合约支付模式(最终用户支付费用)如果是这样,那么它非常简单。在智能合约模型中,您可能会更轻松。但是,如果你需要某些优化、更少的费用、更高的性能等,你可能不得不考虑成为你自己的(平行)链。