Я пытаюсь понять, как следует использовать состояние гиперледжера.Я хочу разработать простую сеть блокчейнов для голосования.И, насколько я понимаю, блокчейн играет роль приложения в базе данных.Весь мой предыдущий опыт подсказывал мне создать базу данных из нескольких коллекций (или таблиц):
- для избирателей (пользователей веб-приложения, которые не должны иметь какого-либо конкретного сертификата).)
- за выборы (например, «выборы за лучший ресторан вокруг»),
- за кандидатов,
- за самих голосов (например, Билл голосует за «бутерброды со старым Бобом»)
- и т. Д.
Я прочитал много статей на https://hyperledger-fabric.readthedocs.io
И они всегда показывают случай, когда есть много Коммерческих бумаг или автомобилей , которые можно купить и оформить.Я видел, что разрешены «частные коллекции», но мне не нужны данные, чтобы быть закрытыми.Я также видел, что есть каналы (но каналы, опять же, заставляют разных пользователей взаимодействовать с разными регистрами)
Код из примера 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
.Также в приложении нет состояний «баланс денег».
Я хотел бы взглянуть на приложение, которое работает с данными различных типов (автомобили / клиенты / магазины).