Contract-Development
儘管已部署契約,但為什麼 Brownie ContractContainer 是空的?
我遇到了 Brownie 沒有將部署的契約附加到的問題,
ContractContainer
因為在嘗試ContractContainer
為我的SimpleStorage
契約編制索引時,我收到以下錯誤:IndexError:列表索引超出範圍
我有一個
deploy.py
部署契約的腳本,我可以確認它可以正常執行並部署契約(可在資源管理器中查看):from brownie import accounts, SimpleStorage def main(): account = accounts.load("my-account") SimpleStorage.deploy({"from": account})
另一個腳本用於訪問使用上述腳本部署
interact.py
的給定部署合約並與之互動。SimpleStorage
from brownie import SimpleStorage def main(): simple_storage_zero = SimpleStorage[0] # indexing error
有人可以幫助我嗎?如果不是確切的問題,我至少有另一種與給定
SimpleStorage
契約互動的方式,例如使用契約的地址對其進行實例化。
我不確定這是如何解決的,但只需刪除
./build/deployments
目錄的內容並重新部署契約就可以為我解決。
或者,您可以將預設網路更改為您正在部署的測試網路。如果我沒記錯的話,brownie 預設會啟動並連接到 ganache-cli。你可以參考這裡的文件https://eth-brownie.readthedocs.io/en/stable/network-management.html#live-networks,或者參考下圖