Problema con clase definida por usuario

Saludos amigos he encontrado se podria decir un “bug” que es muy
incomodo,
al momento de crear una clase, el problema es asi:

He creado una clase en la cual voy colocando las herramientas que
necesito
para ciertas tareas, lo he colocado en “app/models/herramientas.rb” mi
clase
es algo asi por ejemplo:

class Herramientas
def self.uno(parametro1)
parametro1
end
end

y la llamo desde un modelo asi

class Producto < ActiveRecord::Base
a=Herramientas.uno
end

Hasta ahi todo funciona bien, pero el problema ocurre cuando hago algun
cambio en la clase por ejemplo:

class Herramientas
def self.uno(parametro1)
parametro1_
end
end

Ahi claramente me va a lanzar un error de que la variable o metodo no
existe, pero si corrijo el problema la correcion no se refleja hasta que
reinicie el servidor web, y es muy incomodo como veran que por cada
cambio
tenga que reiniciar el servidor, los invito a que prueben eso y si es
que
les ocurre el mismo problema les agradeceria que lo envien a los
desarrolladores de rails o quien sea conveniente ya que
self.speak_english=“very low” jeje, bueno aqui les dejo los datos de la
pc
en la que desarrollo para descartar problemas de software.

s.o: freebsd 6.1
servidor web: mongrel (ultima version)
Ruby version: 1.8.4 (i386-freebsd6)
RubyGems version: 0.8.11
Rails version: 1.1.6
Active Record version: 1.14.4
Action Pack version: 1.12.5
Action Web Service version: 1.1.6
Action Mailer version: 1.2.5
Active Support version: 1.3.1
Environment: development

bueno es todo amigos, ojala se pueda aportar en algo a la comunidad con
esto.

Gracias.


Grandes éxitos, superhéroes, imitaciones, cine y TV…
http://es.msn.kiwee.com/ Lo mejor para tu móvil.

On Oct 2, 2006, at 6:19 AM, Sickman W. wrote:

de la pc
en la que desarrollo para descartar problemas de software.

Rails esta al tanto de cambios en clases que hereden de clases
suyas
como ActiveRecord::Base.

Como tu modelo no es persistente el dispatcher no se lo mira. Pero
afortunadamente las clases de Rails no es que sean especiales en
cuanto a eso per se, lo que marca que algo haya de ser monitorizado
para cambios es la inclusion del modulo (de Rails) Reloadable o
Reloadable::Subclasses, que es lo que ActiveRecord::Base y compañia
hacen para que eso suceda:

class Herramientas
include Reloadable
# …
end

Con eso te funcionara.

– fxn

Es como te dice Xavier, incluyendo ese módulo todo anda.

Más allá de que no es muy correcto poner una clase de “utilidades”
llamada “Herramientas” en la carpeta “models”…