Ruby Gem开发 – 如何使用ActiveRecord?
我正在尝试开发我的第一颗rubygem而且我已经卡住了。 我使用“bundle gem”命令来创建基本结构并阅读一些教程,但我找不到的是如何集成ActiveRecord。
我在哪里创建迁移?
我是否在lib文件夹或根目录中创建“db / migrations”文件夹?
我是否必须在Rakefile中做任何事情(我发现了一些问题,答案是“你必须创建自己的[my_gem]:db:migrate”或类似的东西。)
我需要的只是一种创建gem的方法,它定义了ActiveRecord模型(当然包括迁移),然后可以由rails应用程序使用。
任何有关那个的帮助将不胜感激!
问候,弗洛
构建gem以与rails项目集成时,您需要构建一个railstie引擎。 如果您使用的是rails 3.0.x,请使用enginex ,如果您使用的是rails 3.1,则应使用新的生成器:
rails g plugin new your-plugin-name
然后,在你的gem中,你可以在app/models/
文件夹中定义模型,它们将自动被拾取。
迁移有点困难:对于rails 3.1,如果你在正确的文件夹中定义它们就没问题,在rails 3.0中你必须手动生成一个任务来将迁移复制到你的代码库。 检查此链接 ,我回答了这个问题。
有关rails引擎的更多信息,请查看本文和本文 。
获取ActiveRecord的function可以通过以下方式完成:
require "rubygems" require "active_record" class User < ActiveRecord::Base end
这应该工作。