如何禁用 Rails 应用程序中的迁移功能?

2023-12-14

背景

我们分别设计数据库模型和应用程序模型(RDMBS 架构师与 OOP 工程师)。从我对 Rails 与域/键范式的了解来看,Rails 迁移无法轻松复制精心设计的企业 RDBMS 的所有功能(如果有的话),因此我们不进行迁移,而是使用其他工具来构建数据库(不要介意对象关系阻抗不匹配的问题)。数据完整性和数据库性能对我们来说太有价值了,不能冒任何开发人员更改 RDBMS 模型的风险。

Question

不管出于什么原因,我们现在有一个 Rails 应用程序通过迁移对数据库进行了破坏性的更改。如何在现有 Rails 应用程序中彻底禁用此功能?

我有我的理论,但我想知道世界是怎么想的。


当测试最终来到前台时,这个问题再次出现。因此,我进行了更深入的研究,并得出以下结论,部分感谢对该问题留下的评论。这会删除所有 rake DB 功能,并且测试仍然运行良好。 (如果有人想知道,当我们需要刷新它时,我们从其他地方克隆测试数据库。)

将其添加到Rakefile:

# Disable DB migrations, DB test preparing, etc.
Rake::Task.tasks.each do |t|
    if t.name[0,3] == "db:"
        t.clear
        t.add_description("!!! Disabled in favor of enterprise design at Acme.")
    end
end

注释掉所有的灯具test/test_helper.rb:

#fixtures :all
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何禁用 Rails 应用程序中的迁移功能? 的相关文章

随机推荐