【问题标题】:Migrating MySQL data from a legacy PHP application to a Rails application [closed]将 MySQL 数据从遗留 PHP 应用程序迁移到 Rails 应用程序 [关闭]
【发布时间】:2014-08-20 14:58:32
【问题描述】:

我目前正在 Rails 中重建一个遗留应用程序。旧版应用程序基于 PHP 并使用 MySQL 数据库。

目前的主要挑战是跨数据迁移并符合适合 Rails 的结构。

旧版 PHP 应用程序有许多表,其中大多数表具有相同的列结构,唯一的例外是有几个表具有额外的列。分开的原因是数据被许多不同的脚本插入,所以只是为了故障排除/安全,它们都被分开了。

将这些数据转换到 Ruby on Rails 的最佳方式是什么?

【问题讨论】:

  • 你试过什么?你有什么理由不能让它保持原样吗?您是否希望合并所有具有相同结构的表?如果是这样,如何合并它们将取决于您拥有什么与您需要什么......不是一个可以用您迄今为止提供的内容来回答的问题。

标签: php mysql ruby-on-rails ruby


【解决方案1】:

如果我是你,我会按原样复制/使用确切的数据库,切换到 Rails 前端并开始验证。假设您使用的是ActiveRecord,您可以通过以下方式轻松克服默认主键(id)、外键的问题:

class ModelName < ActiveRecord::Base
  self.table_name = 'your old table / replicated table'
  self.primary_key = 'your old primary key'
  ...
end

关联可以指定如下

...
  belongs_to :something, :foreign_key => 'old foreign key', :primary_key => 'pri_key'
...

【讨论】:

  • 感谢您的意见@Bala 您是否建议为所有这些具有相同列结构的表使用一个模型?
  • 我已经开始了这个过程,似乎运行良好,谢谢!
猜你喜欢
  • 2014-12-09
  • 2022-09-23
  • 1970-01-01
  • 2023-04-01
  • 1970-01-01
  • 2016-12-23
  • 1970-01-01
  • 2017-08-20
  • 2012-03-05
相关资源
最近更新 更多