我正在创建一个新的Web应用程序(Rails 3 beta),其中的一部分将访问当前php应用程序正在使用的旧版mysql数据库中的数据。将Rails模型连接到非Rails数据库
我不想修改遗留数据库模式,我只是想读/写它,以及rails应用程序拥有自己的数据库,使用activerecord为新的东西。我为rails应用程序使用mysql,所以我安装了适配器。
这样做的最好方法是什么?例如,我想要联系人来自旧数据库。我应该创建一个联系人控制器,并手动调用sql来获取视图的变量吗? 或者我应该创建一个联系人模型,并定义与数据库中的字段相匹配的属性,并且我可以像Contact.mail_address一样使用它来调用“SELECT mailaddr FROM contacts WHERE id = Contact.id”。
对不起,我从来没有做过很多的Rails标准的东西,这是记录良好。我不确定最好的方法是什么。理想情况下,我希望将联系人尽可能原生地呈现给我的Rails应用程序,以便我可以以REST方式公开他们的API访问权限。
任何建议和代码示例将不胜感激
感谢您的意见。这是一个相当小的分贝,结构并不完全可怕,只是有点不正常。不过,我宁愿采取使用定制模型的方法。您可以指引我的任何示例/资源?谢谢 – Ryan 2010-05-16 00:16:06
非常多的ActiveRecord文档应该引导你前进。请记住,您始终可以使用虚拟属性,并且如果在rails名称和数据库名称之间存在strait-forward映射,则始终可以编写'method_missing'。 – 2010-05-16 00:32:11