Solidity

我的合約未能部署,因為我的程式碼沒有讀取我正在部署的地址。我怎樣才能讓這個契約部署?

  • March 10, 2022
   from brownie import accounts, config, SimpleStorage

def deploy_simple_storage():
   account = accounts[0]
   simple_storage = SimpleStorage.deploy({"from: account"})
   print(simple_storage)

def main():
   deploy_simple_storage()

我的終端返回AttributeError: Final argument must be a dict of transaction parameters that includes a "from" field specifying the address to deploy from

我不明白這裡發生了什麼,因為如果我添加print(account)它將列印我正在使用的公鑰。但是,它告訴我它不知道我從哪個地址進行部署。對我來說,它已明確指定,但程式碼另有說明。這就是 Patrick Collins 在他的 Solidity 課程中所做的,它對我不起作用。我假設布朗尼的更新改變了它的格式。我需要一些幫助,如果有人可以指定一些新語法以在從本地區塊鏈上的帳戶進行部署時使用,我將不勝感激。

在您的 deploy_simple_storage 函式中,您錯誤地將帳戶變數放在“”中。

試試這個:

def deploy_simple_storage():
   account = accounts[0]
   simple_storage = SimpleStorage.deploy({"from": account})
   print(simple_storage)

引用自:https://ethereum.stackexchange.com/questions/123498