【发布时间】:2021-10-06 15:49:28
【问题描述】:
我正在为 NFT 使用接近合约的标准。 在示例中,它具有 nft_mint,它使用令牌所有者 ID 和令牌 ID 来铸造令牌。
#[payable]
pub fn nft_mint(
&mut self,
token_id: TokenId,
token_owner_id: ValidAccountId,
token_metadata: TokenMetadata,
) -> Token {
self.tokens.mint(token_id, token_owner_id, Some(token_metadata))
}
}
然后令牌所有者 id 可以作为前任进行 nft 转移到另一个帐户。 https://github.com/near-examples/NFT/blob/master/nft/src/lib.rs
contract.nft_mint(token_id.clone(), accounts(0), sample_token_metadata());
testing_env!(context
.storage_usage(env::storage_usage())
.attached_deposit(1)
.predecessor_account_id(accounts(0))
.build());
contract.nft_transfer(accounts(1), token_id.clone(), None, None);
我想以 nft 的购买价格进行 nft 转移,其中前任是要购买 nft 的用户,而不是代币所有者,然后将钱转移给代币所有者。
我怎样才能做到这一点?我会使用internal_transfer 还是在nft_mint 函数中设置价格,并将代币直接铸造到买家账户ID?
【问题讨论】:
标签: nearprotocol