From: Charles Steinman Date: 2005-06-21T15:15:35+09:00 Subject: Re: Confusing code behavior in Rails szymon.rozga wrote: > I have a class in /project_dir/lib called Failure. Failure has one > instance variable, t. But, if you call f. ( f being of type > Failure ), I override method_missing and create a method called > which returns 10 (it's a simplification of a much bigger > problem). > > It works flawlessly, but only once. Under the trend action of my > controller, I instantiate a new instance of Failure. The first time I > load the action and try to display some variable on the view, > everything works. However, if I reload the page, all the instance > variables created on the fly return Nil. And they don't function > properly until I restart Webrick. And then it does the only once thing > again. It sounds like this is what's happening: You're creating these instance variables and accessor methods in method_missing the first time through. Then, after the page is done loading, Rails destroys its world. When you load the page the second time, it re-creates everything, but the accessor methods are already defined, so it never falls through to method_missing and you're just accessing empty instance variables.