ruby-on-rails - 在 rails 引擎中维护 schema.rb 并运行在引擎的 schema.rb 中更新的迁移
问题描述
我有一个 Rails 引擎,目前有一个迁移文件
my_engine/db/migrate/20190611032851_add_columns_to_products.rb
class AddColumnsToInsuranceProducts < ActiveRecord::Migration[5.0]
def change
add_column :insurance_products, :description_ms, :string
end
end
我知道要让我的引擎迁移与我的主应用程序分开,并在我从我的应用程序运行 rake db:migrate 时让它运行,教程说我应该这样做
initializer :append_migrations do |app|
unless app.root.to_s.match root.to_s
config.paths["db/migrate"].expanded.each do |expanded_path|
app.config.paths["db/migrate"] << expanded_path
end
end
end
目前,我有两个数据库,我希望能够在我的引擎中创建一个 schema.rb 文件作为 my_engine/db/schema.rb 并且能够运行rake db:migrate
并且它只更新我的 rails_engine 的 table 一个 schema.rb。
什么是最简单和无缝的方法?
解决方案
推荐阅读
- python - 计算数学表达式的方法
- reporting-services - 通过对最大数字求和来计算总数
- python - Tensorflow 2.2:Iterator.make_initializer 返回无
- c# - 如何在 C#/Win32 api 中找到 Windows 应用程序执行别名的目标?
- laravel - Laravel 模型关系也会自动获取所有其他模型关系
- python - 验证子目录的大小
- javascript - 如何在角度循环中获取索引?
- video - FFmpeg:从具有不同片段持续时间的相同输入视频生成的 M3U8 播放列表的 MD5 哈希(应用视频过滤器后)不匹配
- r - 列线图因子名称错误不在设计中:model.type x time event x.df lambda pred.at
- amazon-web-services - 使用本地 Docker 容器调用 AWS 批处理和汇总作业并在作业完成后发布数据