发展供应链DApp

时间:2018-01-24 16:11:37

标签: blockchain ethereum smartcontracts

作为一个项目,我试图制作一个应用程序,允许使用以太坊区块链存储食物供应链。在这样做时,我将存储从农场到消费者的资产。最终消费者最终将能够从区块链中检索有关其特定产品的信息,例如它来自哪个农场。我无法理解每项资产是否需要单独的智能合约,或者是否可以使用一份智能合约来存储有关多种不同资产的信息。

非常感谢任何帮助,谢谢。

3 个答案:

答案 0 :(得分:1)

无论哪种方式都没问题。我个人会采用多种智能合约方式。如果您使用的是单一的智能合约,您可以使用数据结构将项目的ID映射到供应链中的当前位置。您可以为此从一个整数到一个结构进行简单的映射。如果要跟踪特定项目的所有先前位置,此方法会变得复杂。

最好的方法是为每个项目维护单独的智能合约。在每个合同中,您可以拥有从时间戳/字符串到结构的映射,以存储项目的详细信息。

答案 1 :(得分:0)

这实际上取决于您如何编写智能合约。如果您希望一个合约能够处理多个项目,您可以为每个项目分配某种ID(可能是一个普通的整数),然后您可以创建一个数据结构,对于每个ID,该数据结构都包含有关所附供应链的信息

然后,您可以添加添加更多跟踪ID的功能,以便稍后在

上扩展项目数

答案 2 :(得分:0)

想想公开的Solidity功能,你将会写下并问自己:我将为不同类型的资产提供不同的功能吗?如果您的回答是"是& #34; - 你可能需要单独的智能合约。否则,坚持使用一个,并确保它在内部处理不同的资产类型。

请记住,一旦智能合约被部署和开采,就无法改变。您只能部署一个新客户端,然后将客户端迁移到新的Eth地址。