0

我有一个数据库,我必须使用它来构建我的应用程序。它是由其他人建模的,但它遵循 Rails 约定。我可以很容易地用 Active Record 映射它。

我可以使用迁移对该数据库进行深刻的更改,还是应该继续使用图表进行建模并导出它?

在先前建模的数据库之上使用迁移或脚手架是一种好习惯吗?

因为在搭建脚手架之后,我通常会遇到一些邪恶的错误消息,说有一个迁移试图创建一个已经存在的表。当我删除有问题的迁移时,它只会变得更糟。

对于这个问题:不可知意味着使用任何外部建模工具(GUI SGBD 工具)。

4

1 回答 1

1

你基本上可以走任何一条路线。您选择哪一种将取决于您的开发风格。

如果您使用 scrum/agile,那么它为未来进行迁移提供了强有力的理由。

迁移基本上也是 Rails 大图的一部分,并且是使其在开发过程中运行良好的部分之一。迁移的一个巨大好处是,您可以使用所需的任何数据库创建应用程序,这在将其移动到另一个提供商时非常有用*。但是,对于未完全完成迁移的数据库,将有两个步骤来执行此操作 - 在开始迁移时创建初始数据库“直到”,然后继续使用它们。

迁移和脚手架在现有数据库之上很好。迁移正在添加(或删除)新的 db 内容,并且脚手架可以创建新的 db 记录(在运行迁移时),它们确实有助于遵循 rails 标准并创建诸如常规命名的 .stub 测试文件之类的东西。

当第一次习惯迁移时,错误消息和语法非常令人抓狂,但随着时间的推移,你会变得更好。rails 中有很多类似的东西,即学习所有位并允许奇怪的错误消息。

在这方面提供帮助的工具是 mySQL Workbench(用于 mysql)和 ruby​​Mine IDE 每个工具都可以让您查看现有数据库,您甚至可以使用实际表将来自 mySQL 的 ERD 与 ruby​​Mine 的“模型依赖关系图”进行比较" ERD 使用 rails 模型中的信息。

*但是,移动实时应用程序的实际数据是另一回事。

于 2012-05-28T04:05:20.663 回答