iT邦幫忙

2022 iThome 鐵人賽

DAY 24
0
自我挑戰組

區塊鏈 Blockchain系列 第 24

Day24 DApp實作(smoke test)2

  • 分享至 

  • xImage
  •  

雖然昨天有做過Migrations的介紹了,但為了讓大家更加了解後面實作的內容,講了更詳細的部分


初始的遷移(Migrations)文件及部署規則

在運行 truffle init 時會生成的 Migrations.sol 和 1_initial_migration.js

初始遷移合約一般不需要修改,他們是跟踪部署在區塊鏈上的地址。當然也可以按照自己的需要修改 Migrations.sol 合約文件,進行一些高級的遷移管理,但需要保留truffle init命令創建的接口。

1_initial_migration.js 遷移文件,僅僅是說明如何把 Migrations.sol 合約部署到對應的鏈上。

1_initial_migration.js 遷移文件名,前面的序號,代表著truffle migrate 運行遷移文件的順序,1 表示第一個運行的遷移文件(從1開始)。
我們可以創建其他的遷移文件:2_mycontract_migration.js ,在每個合約部署完成,Truffle 會把遷移序號保存的 Migrations 合約的 last_completed_migration

假設 migrations 就這兩個遷移文件,truffle migrate運行時實際會發生4 筆交易:

  1. 運行 1_initial_migration.js 進行部署
  2. 把序號1 寫入到合約Migrations
  3. 運行 2_mycontract_migration.js 進行部署
  4. 把序號2 寫入到合約Migrations

我們先來看看 1_initial_migratio , 不需要更改

https://ithelp.ithome.com.tw/upload/images/20221008/20152174S7bHGi9ly7.png

然後在migrations複製一個跟1_initial_migration一樣的File,改名2_deploy_contracts

https://ithelp.ithome.com.tw/upload/images/20221008/20152174HzWXCuG11D.png

對Migrations有一定了解後,編輯 2_deploy_contracts

https://ithelp.ithome.com.tw/upload/images/20221008/20152174XHrquTTqhm.png

然後我們要試著運行 migrations
通過之後,表示合同已經遷移,並部署到區塊鏈

truffle migrate

https://ithelp.ithome.com.tw/upload/images/20221008/20152174p8I7TrbKaX.png

後面的明天繼續


Migrations
https://blog.csdn.net/u013288190/article/details/123863384


上一篇
Day23 DApp實作(smoke test)
下一篇
Day25 DApp實作(smoke test) 3
系列文
區塊鏈 Blockchain30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言