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”…

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs