加载Rails 3应用程序的部分

blo*_*ilk 5 ruby gem ruby-on-rails ruby-on-rails-3

我正在为Rails 3开发一个由两个主要组件组成的gem.第一个是rails生成器,它将一些新文件/文件夹添加到rails项目中.第二个是运行时环境,它加载所有上述文件(一些使用我的DSL的ruby类)以及默认Rails堆栈的一部分.从本质上讲,它是您期望能够访问的所有内容,无需rails c路由,控制器,帮助程序和视图.除特定部分外,加载Rails环境的正确方法是什么?

旁注:我很想看到有关要求Rails应用程序的任何好文章.

joh*_*ano 1

我不完全清楚你的意思,或者这是否有帮助,但这听起来类似于我在我编写的实用程序中所做的事情。

我的实用程序像这样加载环境:

#!/usr/bin/env ruby
require File.expand_path('../../config/environment',  __FILE__)
Run Code Online (Sandbox Code Playgroud)

../../config/boot 的 require 将导致加载 Gemfile 中定义的 gem。因此,如果您只需要 Rails 堆栈的一部分,那么您在 Gemfile 中只需要该堆栈的一部分。

这为我提供了 Rails 上下文、模型和其他资源的访问权限。

(更新)要跳过 Rails 堆栈的一部分 - 看看如何替换 ActiveRecord: http://www.mongodb.org/display/DOCS/Rails+3+-+Getting+Started

希望有帮助。