Flutter : How to generate Hive Object from json dart model

Objectives:

Data awal berupa Json (misal didapat dari API yang diprovide backend)

Misalkan data yang di dapat dari API adalah seperti berikut:

{
"id": 1,
"name": "Monkey D. Luffy",
"email": "mdl@opw.com",
"devil_fruit": "gomu gomu no mi",
"gender": "male",
"role": "captain",
"level": 243,
"create_at": "2020-02-20",
"updated_at": "2020-02-20"
}
view raw gistfile1.txt hosted with ❤ by GitHub

Convert data menjadi class model dart dengan online generator

Gunakan converter berikut untuk membuat class:

Buatlah class berdasarkan hasil converter tersebut, misal user.dart

class User {
int id;
String name;
String email;
String devilFruit;
String gender;
String role;
int level;
String createAt;
String updatedAt;
User(
{this.id,
this.name,
this.email,
this.devilFruit,
this.gender,
this.role,
this.level,
this.createAt,
this.updatedAt});
User.fromJson(Map<String, dynamic> json) {
id = json['id'];
name = json['name'];
email = json['email'];
devilFruit = json['devil_fruit'];
gender = json['gender'];
role = json['role'];
level = json['level'];
createAt = json['create_at'];
updatedAt = json['updated_at'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['id'] = this.id;
data['name'] = this.name;
data['email'] = this.email;
data['devil_fruit'] = this.devilFruit;
data['gender'] = this.gender;
data['role'] = this.role;
data['level'] = this.level;
data['create_at'] = this.createAt;
data['updated_at'] = this.updatedAt;
return data;
}
}
view raw gistfile1.txt hosted with ❤ by GitHub

Install Hive Object Converter 


Convert Class dart menjadi Hive Object

Klik kanan file user.dart tadi dan pilih [Hive] Convert to Hive

Generate g model


Apabila gagal atau terminal looping terus, jalankan  flutter packages upgrade
Kemudian jalankan lagi :
flutter packages pub run build_runner build --delete-conflicting-outputs




Popular posts from this blog

PNScanner - Privacy Policy

Password With Show hide button