2010-11-26 137 views
3

如何为Rails 3编写自己的数据库驱动程序?我的意思是编写MongoDB驱动程序的示例,因此可以在不更改模型和使用MongoID和MongoMapper等不同宝石的情况下使用它。谢谢!为ActiveRecord编写驱动程序(Rails 3)

回答

3

写一个驱动程序并不容易,但通常最好的做法是看看其他几个驱动程序,将它们分解为基本要素,并通过填补空白来补充。

ActiveRecord自带Postgres,MySQL,SQLite3和SQLite适配器,因此您可以使用这些作为示例编写自己的代码。这些都在lib/active_record/connection_adapters,都基于通用的AbstractAdapter。

尝试为非SQL数据库编写包装器时会遇到问题,其中有很多关于ActiveRecord的假设是关于底层存储机制具有哪些设施。

+0

你能否给我提供一个指向Rails 3 GitHub repo(https://github.com/rails/rails)目录的链接?非常感谢你! – Sbioko 2010-11-26 16:23:50