如何在flutter和mongodb领域创建多个领域模型

问题描述 投票:0回答:1

我是 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;
}
mongodb flutter dart realm
1个回答
0
投票

请注意,在最新的领域版本中,未将零件文件指定为

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
  ]);
© www.soinside.com 2019 - 2024. All rights reserved.