构建实用的去中心化应用:从投票到桌面前端
开发基于代币的投票应用
在区块链上开发基于代币的投票应用,意味着投票者必须拥有智能合约中创建的代币才能投票,且投票后代币会被销毁,防止重复投票。该智能合约中代币数量有限,与以往不限账户投票的应用不同。
以下是智能合约 TokenBasedVoting.vy 的部分代码:
struct Proposal:
name: bytes32
vote_count: int128
proposals: public(map(int128, Proposal))
token: public(map(address, bool))
index: int128
maximum_token: int128
manager: address
@public
def __init__(_proposalNames: bytes32[2]):
for i in range(2):
self.proposals[i] = Proposal({
name: _proposalNames[i],
vote_count: 0
})
self.index = 0
self.maximum_token = 8
self.manager = msg.sender
@public
def assign_token(target: address):
assert msg.sender == self.manager
assert self.in
超级会员免费看
订阅专栏 解锁全文
1508

被折叠的 条评论
为什么被折叠?



