what test rails make how guides custom create ruby rubygems ruby-on-rails-plugins ruby-on-rails-2

ruby - test - Se ha eliminado una copia de ApplicationController del árbol de módulos, pero aún está activa.



test a gem (6)

Además de las soluciones alternativas mencionadas en las otras respuestas, he encontrado otras dos:

  1. Agregue "config.cache_classes = false" a su archivo config / environment / development.rb. Esto tiene el efecto secundario desafortunado de requerir que reinicie su servidor cada vez que quiera ver sus cambios.
  2. Agregue ''descargable'' dentro de las clases de su controlador en su motor. Consulte http://strd6.com/?p=250 y http://dev.rubyonrails.org/ticket/6001

No he probado el segundo enfoque, ya que encontré la otra solución primero, pero, por supuesto, existe un compromiso entre evitar tener que editar el código del complemento, que puede revertirse si se descarga una versión más nueva del complemento, y luego La facilidad de desarrollo proporcionada por no tener que reiniciar el servidor de desarrollo todo el tiempo en la segunda solución.

Cuando dos solicitudes HTTP simultáneas van a mi aplicación Rails, la segunda siempre devuelve el siguiente error:

Se ha eliminado una copia de ApplicationController del árbol de módulos, ¡pero aún está activa!

A partir de ahí, proporciona un inútil rastreo de pila para el efecto de "revisamos el servidor estándar, ejecutamos su primer before_filter en ApplicationController (y lo verifiqué; es solo el filtro que se ejecuta primero) ", y luego ofrece lo siguiente:

/home/matchu/rails/torch/vendor/rails/activesupport/lib/active_support/dependencies.rb:414:in `load_missing_constant ''

/home/matchu/rails/torch/vendor/rails/activesupport/lib/active_support/dependencies.rb:96:in `const_missing ''

lo que asumo es una respuesta genérica y realmente no dice mucho.

Parece que Google me dice que las personas que desarrollan Rails Engines se encontrarán con esto, pero yo no hago eso. Todo lo que he hecho es actualizar mi aplicación Rails de 2.2 (2.1?) A 2.3.

¿Cuáles son algunas de las posibles causas de este error y cómo puedo hacer un seguimiento de lo que realmente está sucediendo? Sé que esta pregunta es vaga, así que ¿alguna otra información sería útil?

Más importante aún: traté de hacer una prueba en un entorno de "producción" en este momento, y el error no parece persistir. ¿Esto solo afecta el desarrollo, entonces, y no necesito preocuparme demasiado?


Este es un error en Rails 2.3.3:

Hay un parche para él (¿pero incompleto?) En 2-3 estable:

Tienes algunas opciones para abordar el problema:

  • Vuelva a Rails 2.3.2 , espere a que 2.3.4 salga, probablemente a fines de agosto. 2.3.3 tiene un par de problemas malos, por lo que podría ser mejor.
  • El problema no debería ocurrir en el modo de producción, ni ocurrirá en el modo de desarrollo bajo el servidor Thin . Si tiene este problema en los motores de Google en modo de producción, el parche es su única esperanza. Si solo está en modo dev, puedes ejecutar tu servidor local con Thin en lugar de Mongrel.
  • Si se trata de Google Engines, puede abandonar Google Engines y alojar su aplicación de otra manera . Sin embargo, esto parece mucho trabajo.

Mucha suerte, este es un error muy malo con el que muchas personas se están encontrando.


Extraño.

Intente ejecutar "rake rails: update" para asegurarse de que las configuraciones sean las secuencias de comandos actualizadas. Es posible que tenga que comparar los existentes con una aplicación de plantilla.


Llamamos a un modelo de registro de activación en un módulo con espacio de nombre que anula el método de clase "nombre". Rails espera que el método de nombre devuelva Product :: Categories :: MilkProducts :: Firstproduct, pero solo obtiene Firstproduct y produce un error. Por lo tanto, si obtiene este error, primero verifique si redefinió su auto nombre.

  • Firstproduct.method (: name) .owner debe ser Module
  • Firstproduct.method (: name) .source_location

fuente:

module Product::Categories::MilkProducts class Base def self.name self.to_s.demodulize end end class Firstproduct < Base self.product = Product.first end end


Me enfrenté con el mismo problema para mi nuevo motor en los rieles 2.3.4 y encontré la solución here .

Llamando al método unloadable resolví mi problema.


Tuve este error y desde la memoria fue una de estas tres cosas que lo solucionaron.

1) Necesitaba actualizar mongrel / rack 2) Tenía una variable de entorno de la autenticación tranquila que había movido a los archivos production.rb y development.rb de environment.rb: cambiarlo de nuevo a environment.rb parecía ayudar ) will_paginate estaba fuera de fecha