2011-05-04 12 views
5

Estoy desarrollando una joya para Rails 3 que consta de dos componentes principales. El primero es un generador de rieles que agrega algunos nuevos archivos/carpetas a un proyecto de rieles. El segundo es un entorno de tiempo de ejecución que carga todos los archivos mencionados anteriormente (algunas clases de ruby ​​que usan mi DSL), así como una parte de la pila de Rails por defecto. Esencialmente es todo lo que espera de poder acceder en rails c, sans enrutamiento, controladores, ayudantes y puntos de vista. ¿Cuál es la forma correcta de cargar un entorno Rails, excepto por porciones específicas?Cargando partes de una aplicación Rails 3

Nota al margen: Me gustaría ver alguna buena relación con los artículos que requieren aplicaciones Rails.

Respuesta

1

no estoy del todo claro lo que quiere decir, o si esto ayuda, pero suena similar a algo que hago en una utilidad que escribí.

Mi utilidad carga el medio ambiente, así:

#!/usr/bin/env ruby 
require File.expand_path('../../config/environment', __FILE__) 

El requieren de la ../../config/boot hará que las gemas definidos en su Gemfile a cargar. Entonces, si necesitaras solo una parte de la pila de Rails, solo necesitarías esa parte de la pila en tu Gemfile.

Esto me da el contexto de mis raíles, el acceso a los modelos y otros recursos.

(UPDATE) Para saltar partes de los rieles apilar - echar un vistazo a cómo su hecho que cambiar ActiveRecord: http://www.mongodb.org/display/DOCS/Rails+3+-+Getting+Started

Espero que ayude.

+0

Estoy más preocupado con piezas/no/carga de la misma. Soy consciente de que necesito 'config/application' – bloudermilk

+0

Acabo de notar su parte acerca de cómo cambiar el Gemfile. Por desgracia eso no funciona para mí, porque todavía tengo servidor de rieles para funcionar normalmente – bloudermilk

+0

¿Qué partes estás queriendo correr vs no funciona? ¿Partes específicas de la aplicación (es decir, modelos/controladores específicos/etc.)? o partes específicas de la pila Rails? – johnmartirano

1

Tal vez necesita Rails::Initializable?

Se puede hacer así:

initializer "active_support.initialize_whiny_nils" do |app| 
    require 'active_support/whiny_nil' if app.config.whiny_nils 
end 
Cuestiones relacionadas