create<T extends Model> static method
Creates a new record from fromJson.
Implementation
static Future<T?> create<T extends Model>({
required Map<String, dynamic> fromJson,
Disk disk = Model.defaultDisk,
}) async {
if (fromJson['password'] != null) {
fromJson['password'] = Hasher.hashPassword(fromJson['password']);
}
switch (disk) {
case Disk.file:
try {
final model = await JsonFileModel.create<T>(fromJson);
if (model != null) {
model.disk = Disk.file;
return model;
}
return null;
} catch (e) {
return null;
}
case Disk.sqlite:
try {
final model = await SQLiteModel.create<T>(fromJson);
if (model != null) {
model.disk = Disk.file;
return model;
}
return null;
} catch (e) {
return null;
}
case Disk.s3:
return null;
}
}