在旧的rails应用程序中使用旧数据库时,常见问题/绊脚石/问题/缺点是什么?
我们必须决定使用旧数据库还是编写迁移脚本,以便按照rails约定将数据从旧数据库传输到新数据库。你会建议什么?
答案 0 :(得分:2)
表命名让我有一段时间了。诀窍是在你的模型中使用它:
set_table_name 'old_table_name'
set_primary_key 'old_key_column'
这样,您可以在链接到任何所需的表格时使用所需的任何型号名称。
答案 1 :(得分:1)
1)通常,第一个问题是数据库架构设计具有复合主键(多列键),其中Rails(或至少ActiveRecord)需要名为“id”的主键。许多优秀的数据模型不使用代理键,它们使用自然键,因此无法避免使用复合键。实际上,在为ORM设计新数据库时,使用名为“id”的代理键更为实际,但通过在自然键上始终包含备用键约束/索引来强制执行数据完整性。
2)使用复数与单数形式的表命名(Rails希望复数映射到其域对象。对于许多数据库,这可以通过同义词轻松克服。
这些是我在Rails和其他MVC框架中遇到的两个问题,但是在过去几年中有些已经发生了变化,并提供了简单化废话的替代方案。更改遗留数据库是昂贵的,并且执行命名约定是一个很大的错误,我相信现在已经学到了。