Brownie
使用 Brownie 創建契約約束器
我怎樣才能用布朗尼複製這個功能?
// Deploy Uniswap Factory and Router this.uniswapFactory = await (new ethers.ContractFactory(factoryJson.abi, factoryJson.bytecode, deployer)).deploy( ethers.constants.AddressZero // _feeToSetter );
我查看了文件,但沒有看到從 abi 和字節碼創建新的 Contract Container 對象的方法。謝謝。
從 brownie 導入編譯好的合約名稱
from brownie import <ContractName> contract = <ContractName>.deploy(*args)
如果已經部署
from brownie import Contract contract = Contract(*address*)
或者
contract = <ContractName>.at(*address*)
或者
contract = Contract.from_abi( contract_type._name, contract_address, contract_type.abi )
我可能沒有正確表達我的問題;我所追求的契約沒有在 build 文件夾中編譯。什麼對我有用:
from brownie import project, accounts from pathlib import Path
UniFactory = project.load(Path.home() / ".brownie" / "packages" / "Uniswap/v2-core@1.0.1").UniswapV2Factory uni_factory = UniFactory.deploy(accounts[0].address, {"from": accounts[0]})