【问题标题】:When do we use Companion in tables in Flutter?我们什么时候在 Flutter 的表格中使用 Companion?
【发布时间】:2019-07-25 10:30:54
【问题描述】:

我看到很多基于flutter sqfLite 的代码使用(TableName)sCompanion 而不是(TableName)s

使用这个比前者有什么优势?

【问题讨论】:

    标签: sqlite flutter datatables companion-object sqflite


    【解决方案1】:

    假设您的表的名称是 Task。

    class Tasks extends Table{
     IntColumn get taskid => integer().autoIncrement()(); 
     TextColumn get title => text().withLength(min:1,max:20)();
    
    }
    

    此表由 taskid 组成,它自动递增,无需用户输入。现在,如果我们要使用:

    Task(
     title: data,
    );
    

    代替:

    TasksCompanion(
     title: Value(data),
    );
    

    可能会出现错误,提示 taskid 是必需的,但没有给出任何值。 因此,无论何时我们有一个 autoIncrement 值,或者假设您不想填写每个字段(taskid、title 等)。然后我们使用 Companions 只为有限的字段赋值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-07
      • 2018-12-19
      • 2014-12-30
      • 1970-01-01
      相关资源
      最近更新 更多