Brownie

如何使用額外的腳本參數呼叫“brownie run”

  • December 31, 2021

我試圖跑

brownie run ./scripts/create_myToken.py --name "Myname" --network rinkeby

我必須args = sys.argv[1:]像普通 python 一樣捕捉 –name 等

但是 brownie 似乎不喜歡這種命令行格式並返回錯誤 “Usage: brownie run$$ $$ $$ options $$"

有解決辦法嗎?

brownie run被設計為在沒有任何額外參數的情況下執行,除了brownie run -h.

所有參數都傳遞給docopt函式,該函式根據文件字元串解析選項。任何未列出的額外參數都會導致解析器拋出您看到的錯誤。


你仍然可以使用 brownie 來部署你的合約。但是你需要在你的 python 腳本中執行 brownie 設置和參數解析。然後python create_myToken.py用你的論點打電話。

為 brownie 設置的主要內容是連接到網路並載入您的項目。

import brownie
brownie.network.connect('rinkeby')
myproject = brownie.project.load('path/to/project')

然後你可以在你的對myproject像上呼叫你的python項目契約,或者你可以進入下一步導入所有內容,類似於在目錄中有一個活動項目。請注意,要導入,您需要使用項目的解析名稱或在載入項目時傳入名稱。

from brownie.project.<ResolvedNameProject> import *
# or
myproject = brownie.project.load('path/to/project', 'my_project')
from brownie.project.my_project import *

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