如何在 Rails 之外使用 ActiveRecord3 的关联功能?
我正在编写一个脚本,将旧的 Rails 2 应用程序数据库转换为新的 Rails 3 应用程序。新的应用程序重写并简化了数据库模式。
我创建了一个独立于 Rails 的独立 Ruby 程序来完成繁重的工作,并利用 Ruby 模块的适配器模式来操作两个数据库连接并将数据从一个系统移动到另一个系统。
我已经在我的翻译模型中成功实现了 ActiveRecord(使用包含“active_record”),并且我的所有查找和验证都按预期工作。但是,这些关联会导致 method_missing 调用。
我是否需要做一些特殊的事情来允许关联在 Rails 环境之外工作?我希望得到一个简单的答案,例如“您忘记需要此密钥文件”。
I am working on a script to translate an old Rails 2 application database into a new Rails 3 application. The new application is a rewrite and simplification of the database schema.
I have created a stand-alone ruby program independent of Rails to do the heavy lifting and am leveraging the adapter pattern with Ruby modules to manipulate two database connections and move the data from one system to the other.
I have successfully implemented ActiveRecord (using include "active_record") in my translator models and all my find and validations are working as expected. However, the associations are resulting in method_missing calls.
Do I need to do something special to allow the associations to work outside of the Rails environment? I'm hoping for a simple answer like "you forgot to require this key file".
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个在没有rails的情况下使用activerecord的最小示例:
真的没有比这更多的了!
这里使用的 gem 是 activerecord 3,但完全相同的示例适用于 activerecord 2。
PS:显然您需要一个包含站点和用户表的测试数据库来运行此测试。
Here is a minimal example using activerecord without rails:
There is really no more than this !
The gem used here is activerecord 3 but the exact same example works with activerecord 2.
PS: obviously you need a test database with a sites and users tables to run this test.