与非主键字段的关系

时间:2016-10-18 21:13:32

标签: elixir phoenix-framework ecto

在我的项目中,我需要以下表格:

用户

  • id:integer (主键,自动增量)
  • 用户名:字符串
  • consumerId:字符串

订阅

  • id:integer (主键,自动增量)
  • 计划:字符串
  • consumerId:字符串

users表包含应用程序中用户的信息。但是,要在我的项目中处理高级计划的订阅,我使用外部API为每个高级用户提供consumerId。 因此,我将此consumerId存储在users表中,以使其与用户对应。

现在,我想管理subscriptions列表(第二张表)。 对于此列表,我更容易使用consumerId(因为API为我提供了此ID,并且我希望避免额外的查询来检索此consumerId的用户ID)。此外,每个user可以有多个subscriptions。因此,我需要为subscriptionplan和订阅用户的consumerId设置ID。

现在,我想在users表和subscriptions表之间创建一个以consumerId为关键字的关系。一个user可以有多个subscriptions

如何使用Ecto

在迁移脚本和架构方面对其进行描述

0 个答案:

没有答案