Функция AssetRegistry.get не возвращает полный объект в Hyperledger Composer - PullRequest
0 голосов
/ 15 октября 2018

Это наследование, запись имеет ссылку на SampleAsset, а SampletAsset - ссылку на SampleParticipant.
В транзакции я отправляю объект записи, и когда я печатаю его на консоли, он показывает полную информацию об активе образца и завершенинформация SampleParticipant,
, пока я пытаюсь получить его с помощью метода get, он не возвращает полную информацию об объектах.Пожалуйста, проверьте скриншот: Запись объекта getObject
Ссылка SampleParticipant (владелец) не существует.

Пожалуйста, проверьте следующий код цепи:

namespace org.test.network

asset SampleAsset identified by assetId {
  o String assetId
  --> SampleParticipant owner
}

asset Record identified by recordId {
  o String recordId
  --> SampleAsset asset
}

participant SampleParticipant identified by participantId {
  o String participantId
  o Double balance
}

transaction getRecord {
  --> Record record
}

Функция транзакции:

async function get(getTx) {
  const record = getTx.record;

  let assetRegistry = await getAssetRegistry('org.test.network.Record');

  let recordFromReg = await assetRegistry.get(record.$identifier);
  console.log(record);
  console.log(recordFromReg);
}

1 Ответ

0 голосов
/ 15 октября 2018

Когда функция транзакции называется «отношения», все «разрешаются» автоматически, как объяснено здесь .

Когда вы получаете Актив, вы должны «разрешить» отношения самостоятельно.В идеале был бы метод .resolve, который бы сделал это за вас, но, как указывает , эта проблема указывает, что он отсутствует в API времени выполнения.

Когда / если вы пишетекод, используя JavaScript API, вы обнаружите, что есть метод разрешения .

...