Отсутствует цепной код Hyperledger fabric

#go #couchdb #hyperledger-fabric #hyperledger #hyperledger-chaincode

#Вперед #couchdb #hyperledger-fabric #hyperledger #hyperledger-цепной код

Вопрос:

Я надеюсь, что у вас все отлично, я новичок в hyperledger fabric, и у меня есть проблема, если кто-то из вас сталкивался с этой проблемой раньше. Я определил свой ресурс и связанные с ним атрибуты в цепном коде в Go, и я разработал некоторые функции для взаимодействия с ресурсом, сначала все работало нормально, но в последнее время я добавил больше данных в ресурс, и на этот раз, когда я открываю couch db и проверяю данные, некоторые атрибуты отсутствуютЯ могу создать смарт-контракт без ошибок, и даже транзакция вызывается успешно, но когда я проверяю, я не могу найти все определенные данные.

     //Item:  Define the Item structure, with 9 properties.
type Item struct {
    CurrentOwner    string          `json:"currentOwner"`
    Status          string          `json:"status"`
    Approvedorganic     string             `json:"approvedorganic"`
    ReceptionOlives receptionOlives `json:"receptionOlives"`
    ExtractionHuile extractionHuile `json:"extractionHuile"`
    ElaborationHuile   elaborationHuile   `json:"elaborationHuile"`
    ControleduStockage controleduStockage `json:"controleduStockage"`
    MiseEnBouteille miseEnBouteille `json:"miseEnBouteille"`
    LaboratoryTest  laboratorytest  `json:"laboratorytest"`
}
 
type receptionOlives struct {
    VarieteOlive                    string `json:"VarieteOlive"` //Tunisie Sicile ...
    quantity                        string `json:"quantity"`
    MaturiteOlives                  string `json:"MaturiteOlives"` //vert ou violet ou Noir
    daterecolte                     string `json:"daterecolte"`
    recoltemanuelleouclassique      string `json:"recoltemanuelleouclassique"`
    utilisationdesproduitsdabscission string `json:"utilisationdesproduitsdabscission"`
    dateLivraison                   string `json:"dateLivraison"`
    
}
  

затем, когда я проверяю данные в базе данных couch любого однорангового узла, я обнаруживаю, что в receptionOlives отсутствуют такие атрибуты, как quantity, daterecolte recoltmanuelleouclassique … это данные, которые я нахожу:

 {
  "_id": "Item6",
  "_rev": "6-6dfafa223ebc54e4312a259ea0700934",
  "approvedorganic": "",
  "controleduStockage": {
    "CritereCertificatAlimentariteMaterielStockage": "",
    "CritereMaterielStockage": "",
    "CritereTemperatureStockage": "",
    "CritereTransvasementHuile": ""
  },
  "currentOwner": "Olive mill",
  "elaborationHuile": {
    "CritereSeparationliquideliquide": "",
    "CritereSeparationliquidesolide": ""
  },
  "extractionHuile": {
    "HeureReception": "",
    "HeureTrituration": "",
    "Quantiteeauutilise": "",
    "temperaturePateOlive": ""
  },
  "laboratorytest": {
    "physicochemicalresults": "",
    "tastingresults": ""
  },
  "miseEnBouteille": {
    "StockageMatierepremiere": "",
    "Stockagebouteillevide": "",
    "Temperaturehuile": ""
  },
  "receptionOlives": {
    "MaturiteOlives": "123456789",
    "VarieteOlive": "1234567"
  },
  "status": "Reception",
  "~version": "CgMBHQA="
}
  

Заранее благодарю вас.

Комментарии:

1. Поля с именами в нижнем регистре не экспортируются, поэтому они не отображаются в json. Для их экспорта используйте заглавные буквы.

2. Боже мой, большое спасибо, я этого не видел.

Ответ №1:

Вы не экспортировали поля структуры receptionOlives . Пожалуйста, экспортируйте его поле, изменив первую букву поля в верхнем регистре. или замените приведенный ниже код своей структурой.

 type receptionOlives struct {
    VarieteOlive                    string `json:"VarieteOlive"` //Tunisie Sicile ...
    Quantity                        string `json:"quantity"`
    MaturiteOlives                  string `json:"MaturiteOlives"` //vert ou violet ou Noir
    Daterecolte                     string `json:"daterecolte"`
    Recoltemanuelleouclassique      string `json:"recoltemanuelleouclassique"`
    Utilisationdesproduitsdabscission string `json:"utilisationdesproduitsdabscission"`
    DateLivraison                   string `json:"dateLivraison"`
    
}