isar / isar/hive

Using HiveList with json_annotation

Open
#607 3 comments 1 reaction 0 assignees View on GitHub
question
Dominant language
Dart
Stars
4.4k
Forks
449
PR merge metrics
No merged PRs in 30d

Description

**Question**
How can i serialize HiveList with json_serializable

**Code sample**
```dart
import 'package:farmy_mobile/services/database/db_models/anomalies_models/anomaly_comment.dart';
import 'package:farmy_mobile/services/database/db_models/anomalies_models/anomaly_images.dart';
import 'package:farmy_mobile/services/database/db_models/anomalies_models/expert_solution.dart';
import 'package:farmy_mobile/services/database/db_models/farmer.dart';
import 'package:farmy_mobile/services/database/hive_type_ids.dart';
import 'package:hive/hive.dart';
import 'package:json_annotation/json_annotation.dart';

part 'anomaly_detail.g.dart';

@JsonSerializable()
@HiveType(typeId: HiveTypeIDs.ANOMALY_DETAIL_TYPE_ID)
class AnomalyDetail extends HiveObject {
AnomalyDetail({
this.id,
this.cropType,
this.description,
this.isGreenHouse,
this.farmer,
this.created,
this.updated,
this.modelDiag,
this.modelConfidence,
this.images,
this.expertSolutions,
this.satisfaction,
this.seen,
this.comments,
});

@HiveField(0)
int id;

@JsonKey(name: 'crop_type')
@HiveField(1)
String cropType;

@HiveField(2)
String description;

@JsonKey(name: 'is_green_house')
@HiveField(3)
bool isGreenHouse;

@HiveField(4)
Farmer farmer;

@HiveField(5)
String created;

@HiveField(6)
String updated;

@JsonKey(name: 'model_diag')
@HiveField(7)
String modelDiag;

@JsonKey(name: 'model_confidence')
@HiveField(8)
int modelConfidence;

@HiveField(9)
HiveList images;

@JsonKey(name: 'expert_solutions')
@HiveField(10)
HiveList expertSolutions;

@HiveField(11)
int satisfaction;

@HiveField(12)
bool seen;

@HiveField(13)
HiveList comments;

factory AnomalyDetail.fromJson(Map json) =>
_$AnomalyDetailFromJson(json);

Map toJson() => _$AnomalyDetailToJson(this);

@override
String toString() {
return toJson().toString();
}
}

```

**Version**
- Platform: iOS, Android
- Flutter version: 1.22.6
- Hive version: 1.4.4

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.