我已经配置了应用
config :my_app,
ecto_repos: [MyApp.Repo, MyApp.LegacyRepo]
MyApp.Repo的迁移由Ecto管理。
MyApp.LegacyRepo迁移由Rails处理,并在mix ecto.migrate
有没有办法指定"我有两个回购,但请忽略第二个进行迁移"?
答案 0 :(得分:1)
你可以将repo传递给像这样的混合ecto.migrate
mix ecto.migrate -r MyApp.Repo
您可以在phoenix应用中更新test / test_helper.ex,只运行一次这样的repo迁移
Mix.Task.run "ecto.migrate", ["-r", "MyApp.Repo", "--quiet"]
答案 1 :(得分:0)
另一种选择是更改config.exs
。将其更改为...
config :my_app, ecto_repos: [MyApp.Repo]
根据the ecto.migrate documentation ...
要迁移的存储库是指定的存储库 :当前应用程序配置中的ecto_repos选项。但是,如果 给出了-r选项,它取代了:ecto_repos config。
在ecto_repos中没有MyApp.LegacyRepo并不能防止读取或写入或您期望的任何其他内容。它只是配置迁移任务。