Hyperledger fabric 使用go chaincode在hyperledger结构上使用多个键保存值

Hyperledger fabric 使用go chaincode在hyperledger结构上使用多个键保存值,hyperledger-fabric,Hyperledger Fabric,我想使用go chaincode在hyperledger fabric区块链上使用多个键保存一个值 例如,我有一个资产,我想使用它的id和name查询它。 一种方法是,我可以做两次PutState(..),一次用它的id,然后用name键 err := stub.PutState('256', []byte("My Value")) err = stub.PutState('nissan26',[]byte("My Value")) 但问题是,当我使用一个键进行更改时,它不会反映在另一个键中

我想使用go chaincode在hyperledger fabric区块链上使用多个键保存一个值

例如,我有一个资产,我想使用它的
id
name
查询它。 一种方法是,我可以做两次
PutState(..)
,一次用它的
id
,然后用
name

err := stub.PutState('256', []byte("My Value"))
err = stub.PutState('nissan26',[]byte("My Value"))
但问题是,当我使用一个键进行更改时,它不会反映在另一个键中


是否可以在go chaincode中使用类似的方法?

如果我理解正确,您希望能够基于
id
名称查询资产。虽然可以使用默认状态存储(它只是一个嵌入式键/值存储)来实现这一点,但首选的方法是将其用作状态存储。使用CouchDB时,您可以使用JSON对资产建模,然后使用chaincode中的富查询API基于任何字段进行查询