在迁移中插入数据

时间:2018-02-20 20:53:50

标签: elixir phoenix-framework ecto

Model1曾与belongs_to建立Model2关系,但现在我需要将其更改为has_many关系。

因此,我使用model1s_model2s表创建迁移。在迁移过程中,我尝试填充此表(我可以将其作为种子,但在这种情况下,我认为它在迁移中是有意义的),具体如下:

Model1
|> MyRepo.all()
|> Enum.each(fn x ->
  MyRepo.insert!(%Model1Model2{model1_id: x.id, model2_id: x.model2_id})
end)

我收到了这个错误:

** (ArgumentError) argument error
    (stdlib) :ets.lookup(:prometheus_histogram_table, {:default, :ecto_db_query_duration_microseconds, [:ok], 1})
(...)

我已经隔离了错误,它发生在MyRepo.all行。任何具有此类数据查询的命令都会失败。但我可以做,例如,MyRepo.config而不会引发错误。

这是什么意思?我该如何解决?

0 个答案:

没有答案