GetStateByPartialCompositeKey по определенному ключу не работает

В настоящее время я работаю с чейнкодом Hyperledger, У меня проблема с методом "GetStateByPartialCompositeKey". Их индекс состоит из 3 частей (key1~key2~key3). Если я попробую GetStateByPartialCompositeKey(index, key1) , он отлично работает. Но если я попытаюсь найти другой ключ, например GetStateByPartialCompositeKey(index, key3), ничего не вернется. Хотя ключ на самом деле сохраняется. Как решить эту проблему?

Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
API ввода вопросов - это полезный инструмент для интеграции моделей машинного обучения, таких как ChatGPT, в приложения, требующие обработки...
0
0
1 072
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

См.: https://godoc.org/github.com/hyperledger/fabric/core/chaincode/shim#ChaincodeStub.GetStateByPartialCompositeKey

Как упоминалось в описании метода: «Эта функция возвращает итератор, который можно использовать для перебора всех составных ключей, приставка которых соответствует данному частичному составному ключу».

Этот метод должен иметь префикс, то есть первую половину составного ключа для соответствия. Несмотря на то, что в имени метода может быть указан частичный ключ, он работает только с префикс составного ключа, а не с какой-либо его частью.

Большое спасибо, теперь я знаю, почему

Tiến Thành Nguyễn 26.04.2019 16:35

user11413769, я хочу знать, как поставить состояние, чтобы я мог получить состояние по части ключа.

Tiến Thành Nguyễn 26.04.2019 19:21

Насколько я знаю, до сих пор нет способа добиться этого. Вы можете общаться на официальном форуме, чтобы узнать, появится ли что-то в будущем выпуске. Или вы можете изменить свою модель данных, чтобы обойти доступные методы.

Varshitha 27.04.2019 12:51

Другие вопросы по теме