FLOOR 数据库中缺少部分“Appdatabase.g.dart”颤动

Posted

技术标签:

【中文标题】FLOOR 数据库中缺少部分“Appdatabase.g.dart”颤动【英文标题】:Missing part 'Appdatabase.g.dart' flutter in FLOOR database 【发布时间】:2020-05-05 01:30:56 【问题描述】:

我按照flutter floor教程,这是我的数据库文件

import 'package:floor/floor.dart';
import 'package:news_app/database/daos/Userdao.dart';
import 'package:news_app/database/entities/User.dart';
part "AppDatabase.g.dart";


@Database(entities: [User], version: 1)
abstract class ApplicationDatabase extends FloorDatabase 
  Userdao get userDao;

这是我的 dao 文件,

import 'package:floor/floor.dart';
import 'package:news_app/database/entities/User.dart';

@dao
abstract class Userdao

  @Query("select * from table_user")
  Future<List<User>> getUsersList();

  @insert
  Future<void> insertUser(User user);


这是我的实体文件,

import 'package:floor/floor.dart';

@Entity(tableName: 'table_user')
class User

  @PrimaryKey(autoGenerate: true)
  int id;

  String name;

  String password;

  User(this.id,this.name,this.password);




dependencies:
  flutter:
    sdk: flutter

  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for ios style icons.
  cupertino_icons: ^0.1.2
  fluttertoast: 3.1.3
  shared_preferences: 0.5.6
  retrofit: any
  logger: any
  dio: 3.0.8
  http: 0.12.0+4
  json_serializable: any
  floor: ^0.9.0

dev_dependencies:
  flutter_test:
    sdk: flutter
  retrofit_generator: any
  build_runner: any
  floor_generator: ^0.9.0

每当我尝试运行此命令 flutter pub run build_runner build 命令时,我都会收到此错误

[INFO] 正在运行构建... [INFO] 1.7 秒过去,0/1 动作完成。 [警告] floor_generator: floor_generator on lib/database/ApplicationDatabase.dart: 缺少“部分 'ApplicationDatabase.g.dart';”。

【问题讨论】:

您必须创建一个名为“AppDatabase.g.dart”的文件。 导入 'dart:async';导入“包:路径/path.dart”;将“包:sqflite/sqflite.dart”导入为 sqflite;部分“ApplicationDatabase.g.dart”;我已添加此代码并运行 flutter pub run build_runner build 命令,它可以工作。 【参考方案1】:

你是否在数据库中使用相同名称的文件

喜欢 appdatabase.dartappdatabase.g.dart

【讨论】:

哥们,你为我节省了数百万分钟 我的文件名是app_database.dart 我必须给part app_database.g.dart 然后运行生成器命令!。谢谢【参考方案2】:

对于未来的读者,要创建database.g.dart,您必须在终端中运行以下命令,

flutter packages pub run build_runner build

或自动运行它,每当文件更改时,使用

flutter packages pub run build_runner watch

要阅读完整程序,请访问floor documentation

【讨论】:

以上是关于FLOOR 数据库中缺少部分“Appdatabase.g.dart”颤动的主要内容,如果未能解决你的问题,请参考以下文章

鸿业使用中缺ADO组件

使用 Typescript 在 Mongoose 中缺少子文档方法

使用 Typescript 在 Mongoose 中缺少子文档方法

Unity - 项目面板中缺少子元素扩展按钮的预制件

PPT中缺角文字怎样设置?这样操作简单又便捷

php floor()函数 语法