第5課

合約的部署和使用

歡迎繼續Tezos代幣化課程第五課的學習!到目前爲止,我們已經設計、編寫併測試了FA1.2代幣合約,現在便可將其部署到Tezos網絡中併使用它了。 在本課中,我們將引導您完成在Tezos測試網上部署合約的過程,併曏您展示如何使用SmartPy的在線界麵與之交互。

部署合約

  1. 首先,回到合約所在的SmartPy在線IDE。頁麵頂部有一個“Compile”按鈕。單擊此按鈕將合約編譯成Tezos區塊鏈可以理解的底層語言Michelson。

  2. 編譯完成後,頁麵底部會出現“Deploy Michelson Contract”按鈕。點擊此按鈕開始部署流程。

  3. 進入部署界麵後,您可以選擇部署合約的網絡。在本教程中,請選擇“Testnet(測試網)”。在將合約部署到主網上之前,建議大家一定先在測試網上進行測試。

  4. 您需要一個Tezos錢包來支付部署費用。如果您沒有測試網錢包,可以訪問此處來穫取測試網XTZ併支付部署費。

  5. 支持多個瀏覽器擴展錢包。

  6. 創建好Tezos錢包後,您可以單擊此處請求水龍頭測試網代幣通過瀏覽器與您的錢包連接。

  7. 選擇好測試網後,輸入您的測試網Tezos地址和私鑰。確保您的私鑰是安全可靠的!單擊“Deploy”按鈕開始部署合約。

  8. 此時,您會看到一個對話框,其中包含有關操作的信息。如果信息正確,請確認操作。隨後,合約將部署到Tezos測試網。此過程可能需要幾分鐘時間。

  9. 成功部署合約後,您將收到一個合約地址。牢記此地址,在使用合約時您將需要該地址。

使用合約

  1. 合約部署完成後,您可以通過SmartPy IDE中的“Contract Interactions”功能來使用合約。

  2. 進入“Contract Interactions”頁麵,輸入已部署合約的地址。

  3. 該界麵將顯示合約的入口點,您可以通過這些入口點來使用合約。

  4. 要調用合約的入口點,請單擊其名稱,填寫必要的參數,然後單擊“Execute(執行)”。

  5. 例如,要鑄造新代幣,請選擇“Mint”入口點,輸入接收者地址和要鑄造的代幣數量,然後單擊“Execute”。

  6. 如果操作成功,代幣將被鑄造併添加到接收者的餘額中。您可以通過查詢接收者地址的餘額進行驗證。
    需要註意的是,在區塊鏈上使用合約需要支付gas費,因此,您需要確保錢包中有足夠的餘額。

自定義代幣

在我們的合約範例中,代幣名稱是在我們在test()函數中初始化測試場景時定義的。它作爲token_metadata映射的一部分被包含在內:

Python
token_metadata = {
    "decimals": sp.utils.bytes_of_string("18"),  # Mandatory by the spec
    "name": sp.utils.bytes_of_string("My Great Token"),  # Recommended
    "symbol": sp.utils.bytes_of_string("MGT"),  # Recommended
    # Extra fields
    "icon": sp.utils.bytes_of_string(
        "https://smartpy.io/static/img/logo-only.svg"
    ),
}

在這段代碼中,“My Great Token”是代幣的初始名稱。要爲代幣設置不衕的名稱,您隻需將其替換爲您想要的名稱即可。例如,如果要將代幣命名爲“GateLearn”,我們需要將代碼修改如下:

Python
token_metadata = {
    "decimals": sp.utils.bytes_of_string("18"),  # Mandatory by the spec
    "name": sp.utils.bytes_of_string("GateLearn"),  # Recommended
    "symbol": sp.utils.bytes_of_string("GL"),  # Recommended
    # Extra fields
    "icon": sp.utils.bytes_of_string(
        "https://smartpy.io/static/img/logo-only.svg"
    ),
}

通過這種方式,我們便能創建名爲“GateLearn”的代幣。該名稱在合約中錶示爲字節字符串,併將顯示在與我們的合約交互併支持FA1.2標準的應用中。需要註意的是,代幣的名稱以及token_metadata映射中包含的其他詳細信息是在合約部署時設置的。合約一旦部署,這些信息將無法更改,除非您在合約中實現了允許此類修改的功能。

免責聲明
* 投資有風險,入市須謹慎。本課程不作為投資理財建議。
* 本課程由入駐Gate Learn的作者創作,觀點僅代表作者本人,絕不代表Gate Learn讚同其觀點或證實其描述。
目錄
第5課

合約的部署和使用

歡迎繼續Tezos代幣化課程第五課的學習!到目前爲止,我們已經設計、編寫併測試了FA1.2代幣合約,現在便可將其部署到Tezos網絡中併使用它了。 在本課中,我們將引導您完成在Tezos測試網上部署合約的過程,併曏您展示如何使用SmartPy的在線界麵與之交互。

部署合約

  1. 首先,回到合約所在的SmartPy在線IDE。頁麵頂部有一個“Compile”按鈕。單擊此按鈕將合約編譯成Tezos區塊鏈可以理解的底層語言Michelson。

  2. 編譯完成後,頁麵底部會出現“Deploy Michelson Contract”按鈕。點擊此按鈕開始部署流程。

  3. 進入部署界麵後,您可以選擇部署合約的網絡。在本教程中,請選擇“Testnet(測試網)”。在將合約部署到主網上之前,建議大家一定先在測試網上進行測試。

  4. 您需要一個Tezos錢包來支付部署費用。如果您沒有測試網錢包,可以訪問此處來穫取測試網XTZ併支付部署費。

  5. 支持多個瀏覽器擴展錢包。

  6. 創建好Tezos錢包後,您可以單擊此處請求水龍頭測試網代幣通過瀏覽器與您的錢包連接。

  7. 選擇好測試網後,輸入您的測試網Tezos地址和私鑰。確保您的私鑰是安全可靠的!單擊“Deploy”按鈕開始部署合約。

  8. 此時,您會看到一個對話框,其中包含有關操作的信息。如果信息正確,請確認操作。隨後,合約將部署到Tezos測試網。此過程可能需要幾分鐘時間。

  9. 成功部署合約後,您將收到一個合約地址。牢記此地址,在使用合約時您將需要該地址。

使用合約

  1. 合約部署完成後,您可以通過SmartPy IDE中的“Contract Interactions”功能來使用合約。

  2. 進入“Contract Interactions”頁麵,輸入已部署合約的地址。

  3. 該界麵將顯示合約的入口點,您可以通過這些入口點來使用合約。

  4. 要調用合約的入口點,請單擊其名稱,填寫必要的參數,然後單擊“Execute(執行)”。

  5. 例如,要鑄造新代幣,請選擇“Mint”入口點,輸入接收者地址和要鑄造的代幣數量,然後單擊“Execute”。

  6. 如果操作成功,代幣將被鑄造併添加到接收者的餘額中。您可以通過查詢接收者地址的餘額進行驗證。
    需要註意的是,在區塊鏈上使用合約需要支付gas費,因此,您需要確保錢包中有足夠的餘額。

自定義代幣

在我們的合約範例中,代幣名稱是在我們在test()函數中初始化測試場景時定義的。它作爲token_metadata映射的一部分被包含在內:

Python
token_metadata = {
    "decimals": sp.utils.bytes_of_string("18"),  # Mandatory by the spec
    "name": sp.utils.bytes_of_string("My Great Token"),  # Recommended
    "symbol": sp.utils.bytes_of_string("MGT"),  # Recommended
    # Extra fields
    "icon": sp.utils.bytes_of_string(
        "https://smartpy.io/static/img/logo-only.svg"
    ),
}

在這段代碼中,“My Great Token”是代幣的初始名稱。要爲代幣設置不衕的名稱,您隻需將其替換爲您想要的名稱即可。例如,如果要將代幣命名爲“GateLearn”,我們需要將代碼修改如下:

Python
token_metadata = {
    "decimals": sp.utils.bytes_of_string("18"),  # Mandatory by the spec
    "name": sp.utils.bytes_of_string("GateLearn"),  # Recommended
    "symbol": sp.utils.bytes_of_string("GL"),  # Recommended
    # Extra fields
    "icon": sp.utils.bytes_of_string(
        "https://smartpy.io/static/img/logo-only.svg"
    ),
}

通過這種方式,我們便能創建名爲“GateLearn”的代幣。該名稱在合約中錶示爲字節字符串,併將顯示在與我們的合約交互併支持FA1.2標準的應用中。需要註意的是,代幣的名稱以及token_metadata映射中包含的其他詳細信息是在合約部署時設置的。合約一旦部署,這些信息將無法更改,除非您在合約中實現了允許此類修改的功能。

免責聲明
* 投資有風險,入市須謹慎。本課程不作為投資理財建議。
* 本課程由入駐Gate Learn的作者創作,觀點僅代表作者本人,絕不代表Gate Learn讚同其觀點或證實其描述。