如何在flatter中本地存储json响应(sqflite数据库)

如何在flatter中本地存储json响应(sqflite数据库),json,flutter,dart,sqflite,Json,Flutter,Dart,Sqflite,我无法将来自API的json响应存储在sqflite数据库中,但我已经在列表中解析了json响应,并且在sqflite数据库中存储了类似的数据 为了在本地存储,我获得了成功,能够执行CRUD操作并将其发送到服务器,同样,我也能够对API数据执行CRUD操作,但在本地和json数据之间的同步上出现了问题 下面是调用json数据的代码id Future<List<Activities>> getData() async { List<Activities> lis

我无法将来自API的json响应存储在sqflite数据库中,但我已经在列表中解析了json响应,并且在sqflite数据库中存储了类似的数据

为了在本地存储,我获得了成功,能够执行CRUD操作并将其发送到服务器,同样,我也能够对API数据执行CRUD操作,但在本地和json数据之间的同步上出现了问题

下面是调用json数据的代码id

Future<List<Activities>> getData() async {
List<Activities> list;
var res = await http
    .post("http://xxxx/get-activity", headers: {
  HttpHeaders.authorizationHeader: "Bearer " + _token.toString()
});
if (res.statusCode == 200) {
  var data = json.decode(res.body);
  var rest = data["data"] as List;
 // print(rest);
  list = rest.map<Activities>((json) => Activities.fromJson(json)).toList();
 // print('okay, ${rest[0]}!');
} else {
  print('something error');
}
print("List Size: ${list.length}");
return list;
Future getData()异步{
名单;
var res=等待http
.post(“http://xxxx/get-activity“,标题:{
HttpHeaders.authorizationHeader:“承载者”+_令牌.toString()
});
如果(res.statusCode==200){
var data=json.decode(res.body);
var rest=数据[“数据”]作为列表;
//打印(其余);
list=rest.map((json)=>Activities.fromJson(json)).toList();
//打印('okay,${rest[0]}!');
}否则{
打印('something error');
}
打印(“列表大小:${List.length}”);
退货清单;
}

已解决

var data = json.decode(res.body);
var activities= data["data"] as List; 
for (var activity in activities) {
 Activity actData = Activity.fromMap(activity);
 batch.insert(actTable, actData.toMap());
} 

你是说你有一个json字符串,你想把这个大字符串保存到sqlite吗?或者您已经解析了这个json字符串并想将每个字段保存到sqllite?我这样做了。当时我的实际问题是:我解析了json字符串,能够使用future builder在列表中显示,并在SQFLITE中本地存储问题。您找到解决方案了吗?