我是 Flutter 和 Realm 的新手。我的项目中有多种表单,我想知道创建模型的最佳方法是什么。我正在使用最新的领域和颤振版本开发颤振应用程序。
我尝试这样做,但 android studio 只是挂起很长时间。
import 'package:realm/realm.dart';
part 'databaseModel.g.dart';
// Defining transactions model
@RealmModel()
class _Transaction{
@PrimaryKey()
late ObjectId id;
late String selectedOption;
late String transactionType ;
late String currency ;
late double rate ;
late double amount ;
late double total ;
late String remarks ;
}
// Defining journal entry model
@RealmModel()
class _JournalEntry{
@PrimaryKey()
late ObjectId id;
late String selectedOption;
late String transactionType;
late String currency;
late String from;
late String to;
late double amount;
late String remarks ;
}
//Defining new account model
@RealmModel()
class _NewAccount{
@PrimaryKey()
late ObjectId id;
late String fullName;
late int phoneNumber;
late String email;
}
请注意,在最新的领域版本中,未将零件文件指定为
part 'databaseModel.g.dart';
,而是指定零件'databaseModel.realm.dart';
。
此外,如果您希望项目很大,建议将每个模型保留在自己的文件中。
如果您有相关模型,请始终在子模型名称前面加上 $ 而不是 _。请参阅下面的示例:
--------------person.dart--------------
import 'package:realm/realm.dart';
part 'person.realm.dart';
@RealmModel()
class $Person {
@PrimaryKey()
late ObjectId id;
late String firstName;
late String lastName;
late int? age;
}
--------------bike.dart--------------
import 'package:realm/realm.dart';
import 'path/to/person.dart';
part 'bike.realm.dart';
@RealmModel()
class _Bike {
@PrimaryKey()
late ObjectId id;
late String name;
late $Person? owner;
}
--------------bike_data_service.dart--------------
//In the data service config for bike, remember to include Person.schema
final Configuration _config = Configuration.local([
Bike.schema,
Person.schema
]);