如何从json中获取int并在dart中将其解析为bool?
我的模型如下:如何从json中获取int并在dart中将其解析为bool?,json,parsing,flutter,dart,orm,Json,Parsing,Flutter,Dart,Orm,我的模型如下: class Abc extends Model { int playful; Abc({this.playful}) : super(id); Abc.fromJson(Map<String, dynamic> json) : this(playful: json['playful']); Map<String, dynamic> toJson() { final Map<String, dynamic> data
class Abc extends Model {
int playful;
Abc({this.playful}) : super(id);
Abc.fromJson(Map<String, dynamic> json) : this(playful: json['playful']);
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['playful'] = this.playful;
return data;
}
}
类Abc扩展模型{
顽皮的;
Abc({this.playful}):超级(id);
fromJson(mapJSON):这个(playful:json['playful']);
映射到JSON(){
最终地图数据=新地图();
data['playful']=this.playful;
返回数据;
}
}
我正在从
json
获取整数值playful
(它是1或0),但我想在我的应用程序中将其用作布尔值(在应用程序中接收为bool
,但在数据库中发送为int
)。如何实现它?据我所知,Dart没有任何解析布尔值的函数或方法。所以我将在这个类中创建一个私有函数,它将返回给定整数的布尔值
bool parseBool(int integer) {
return integer == 1;
}
试试这个
class Abc extends Model {
bool playful;
Abc({this.playful}) : super(id);
Abc.fromJson(Map<String, dynamic> json) : this(playful: json['playful'] == 1);
Map<String, dynamic> toJson() {
final data = <String, dynamic>{};
data['playful'] = this.playful ? 1 : 0;
return data;
}
}
类Abc扩展模型{
嬉戏的布尔;
Abc({this.playful}):超级(id);
fromJson(映射json):this(playful:json['playful']==1);
映射到JSON(){
最终数据={};
data['playful']=this.playful?1:0;
返回数据;
}
}
工作起来很有魅力!完美描述。:)非常感谢。