在渡槽中作为“是”关系的主键

时间:2019-05-12 14:05:15

标签: dart orm aqueduct

我正在尝试使用渡槽建模isA关系。这是一对一的关系,但是我需要将@Relate列用作主键,但是我不能同时设置@Relate和@Column标记。这样做的方式是什么?

假设我有一个“用户”表和一个“管理员”表。管理员是具有更多字段的用户,例如,该用户具有ID,电子邮件,用户名和密码,而admin具有user_id,access_level,全名。普通用户不需要的字段。

我的编码方式如下:

class _User
{
  @primaryKey
  int id;

  String email;

  String username;

  String password;

  Admin admin;
}

class _Admin
{
  @Relate(#admin)
  User user;

  int access_level;

  String fullname;
}

但是无法生成迁移,因为我没有为admin声明主键,并且如果我尝试在User用户上方添加@primaryKey或@Column,则会收到一个错误,提示我无法同时设置Column和关联元数据。

0 个答案:

没有答案