Hyperledger "Smart Contract" 可以在该州拥有多个集合吗?
Can Hyperledger "Smart Contract" have multiple collections at the state?
我正在尝试了解超级账本状态的使用方式。
我想开发一个用于投票的简单区块链网络。
据我了解,区块链扮演着应用程序的 'database' 角色。
我以前的所有经验都告诉我要构建一个包含多个 集合 (或表)的数据库:
- 选民(网络应用程序的用户,不应该有任何特定的证书)
- 选举(例如"election for best restaurant around"),
- 候选人,
- 投票本身(例如比尔投票给 'Old Bob sandwiches')
- 等等
我在https://hyperledger-fabric.readthedocs.io
阅读了很多文章
而且他们总是显示有很多商业票据或汽车可以购买和发行的情况。
我已经看到允许 "private collections",但我不需要数据是私有的。
我还看到有渠道(但渠道,同样,让不同的用户与不同的分类账互动)
来自示例的代码 repo:
class CommercialPaperContext extends Context {
constructor() {
super();
// All papers are held in a list of papers
this.paperList = new PaperList(this);
}
}
...
class CommercialPaperContract extends Contract {
createContext() {
return new CommercialPaperContext();
}
...
async buy(ctx, issuer, paperNumber, currentOwner, newOwner, price, purchaseDateTime)
看到 - 有 buy
方法和 issuer
参数,但没有 issuer
集合,也没有 owners
集合。应用程序中的任何地方也没有 'money balance' 状态。
我想看看处理不同类型数据 (Cars/Customers/Shops) 的应用程序。
在 Hyperledger fabric 中,数据存储为键值对。
密钥必须是唯一的,因为每个 transaction.State 都为该密钥维护。
您可以使用丰富的查询从状态中获取数据。
您可以在链代码中定义任何资产,如汽车、书籍等及其属性(集合),并将其存储起来,主要以 json 格式。
前提是密钥是唯一的。
你可以检查 fabcar 或 marbles02 链代码是否相同,你会在 fabric-samples/chaincode 中找到它。
如果我遗漏了什么,请回复评论。
我正在尝试了解超级账本状态的使用方式。 我想开发一个用于投票的简单区块链网络。 据我了解,区块链扮演着应用程序的 'database' 角色。 我以前的所有经验都告诉我要构建一个包含多个 集合 (或表)的数据库:
- 选民(网络应用程序的用户,不应该有任何特定的证书)
- 选举(例如"election for best restaurant around"),
- 候选人,
- 投票本身(例如比尔投票给 'Old Bob sandwiches')
- 等等
我在https://hyperledger-fabric.readthedocs.io
阅读了很多文章
而且他们总是显示有很多商业票据或汽车可以购买和发行的情况。
我已经看到允许 "private collections",但我不需要数据是私有的。
我还看到有渠道(但渠道,同样,让不同的用户与不同的分类账互动)
来自示例的代码 repo:
class CommercialPaperContext extends Context {
constructor() {
super();
// All papers are held in a list of papers
this.paperList = new PaperList(this);
}
}
...
class CommercialPaperContract extends Contract {
createContext() {
return new CommercialPaperContext();
}
...
async buy(ctx, issuer, paperNumber, currentOwner, newOwner, price, purchaseDateTime)
看到 - 有 buy
方法和 issuer
参数,但没有 issuer
集合,也没有 owners
集合。应用程序中的任何地方也没有 'money balance' 状态。
我想看看处理不同类型数据 (Cars/Customers/Shops) 的应用程序。
在 Hyperledger fabric 中,数据存储为键值对。
密钥必须是唯一的,因为每个 transaction.State 都为该密钥维护。 您可以使用丰富的查询从状态中获取数据。
您可以在链代码中定义任何资产,如汽车、书籍等及其属性(集合),并将其存储起来,主要以 json 格式。 前提是密钥是唯一的。 你可以检查 fabcar 或 marbles02 链代码是否相同,你会在 fabric-samples/chaincode 中找到它。 如果我遗漏了什么,请回复评论。