save method
void
save(
- dynamic parentModel
Implementation
void save(dynamic parentModel) async {
if (parentModel == null) return;
var fpk = Dynamic(parentModel).annotationData(annotation.Key);
var fpkName = fpk.first['field'];
var fpkValue = Dynamic(parentModel).get(fpkName);
var model;
if (modelList!.length > 0) model = modelList!.first.runtimeType;
await rf.db.execute(
'delete from \"${model.toString()}\" where \"$fpkName\" = \'$fpkValue\'');
var _model =
(model.runtimeType == String) ? Models.models[model]!.model : model;
var pk = Dynamic(_model).annotationData(annotation.Key);
var pkName = pk.first['field'];
for (var item in modelList!) {
Dynamic(item!).set(pkName, '');
Dynamic(item).set(fpkName, fpkValue!);
await rf.db.save(item);
}
}