attachModel<TModel, TCreateInput extends JsonSerializable, TCreateResult, TUpdateInput extends JsonSerializable, TUpdateResult, TDeleteInput extends JsonSerializable, TDeleteResult, TGetResult, TFindInput extends JsonSerializable, TFindResult> static method
CactusModel<TModel, TCreateInput, TCreateResult, TUpdateInput, TUpdateResult, TDeleteInput, TDeleteResult, TGetResult, TFindInput, TFindResult>
attachModel<TModel, TCreateInput extends JsonSerializable, TCreateResult, TUpdateInput extends JsonSerializable, TUpdateResult, TDeleteInput extends JsonSerializable, TDeleteResult, TGetResult, TFindInput extends JsonSerializable, TFindResult>(
- CactusModelBuilder<
TModel, TCreateInput, TCreateResult, TUpdateInput, TUpdateResult, TDeleteInput, TDeleteResult, TGetResult, TFindInput, TFindResult> modelBuilder
Start point to include Model into db Model must be created from GraphQl schema
Implementation
static CactusModel<
TModel,
TCreateInput,
TCreateResult,
TUpdateInput,
TUpdateResult,
TDeleteInput,
TDeleteResult,
TGetResult,
TFindInput,
TFindResult>
attachModel<
TModel,
TCreateInput extends JsonSerializable,
TCreateResult,
TUpdateInput extends JsonSerializable,
TUpdateResult,
TDeleteInput extends JsonSerializable,
TDeleteResult,
TGetResult,
TFindInput extends JsonSerializable,
TFindResult>(
final CactusModelBuilder<
TModel,
TCreateInput,
TCreateResult,
TUpdateInput,
TUpdateResult,
TDeleteInput,
TDeleteResult,
TGetResult,
TFindInput,
TFindResult>
modelBuilder,
) {
final db = CactusSync.db;
if (db == null) {
throw ArgumentError.notNull(
'''
You don't have CactusSync db instance! Be aware:
CactusSync.init(...) should be called before attachModel!
''',
);
}
final model = modelBuilder(db: db);
db.models.addAll({model.graphqlModelName: model});
return model;
}