Code changes are ignored due to code minor ver. were cached


#1

Hi there!
I study Ruby on Rails and met a problem.

I placed a class definition code for class which is NOT a Model into
separate file, assume MyToolClass.rb

Then I started working on controller code and required ‘MyToolClass’

While working on controller code I also corrected some code in
MyToolClass.rb, but it seemed, that changes in MyTooolClass.rb were
ignored by Rails until I had restarted Mongrel.

Q#1: Please write to me how can I tell Rails to reread source files
those were changed after last use.

Q#:2 Where to place files like MyToolclass.rb, which are nither Model,
nor Controller?

Thank you for your attention.


#2

On Nov 18, 3:04 pm, Zhoran T. removed_email_address@domain.invalid
wrote:

Hi there!
I study Ruby on Rails and met a problem.

I placed a class definition code for class which is NOT a Model into
separate file, assume MyToolClass.rb

Then I started working on controller code and required ‘MyToolClass’

use require_dependency instead of require.

Fred


#3

On Nov 18, 10:03 am, Frederick C. removed_email_address@domain.invalid
wrote:

use require_dependency instead of require.

Fred

But if the file name follows conventions (so a class named MyToolClass
would go in a file named app/models/my_tool_class.rb or lib/
my_tool_class.rb), then no require or require_dependency should be
needed and code changes will be automatically reloaded in development
mode.

If you’re not following naming conventions, then do as Fred
suggests :slight_smile:

Jeff

www.purpleworkshops.com


#4

Jeff C. wrote:

On Nov 18, 10:03�am, Frederick C. removed_email_address@domain.invalid
wrote:

use require_dependency instead of require.

Fred

But if the file name follows conventions (so a class named MyToolClass
would go in a file named app/models/my_tool_class.rb or lib/
my_tool_class.rb), then no require or require_dependency should be
needed and code changes will be automatically reloaded in development
mode.

If you’re not following naming conventions, then do as Fred
suggests :slight_smile:

Jeff

www.purpleworkshops.com

Many thanks, guys!
I put each my class into it’s own file in app’s lib directory following
naming conventions and Voila! After that every change in these files are
incorporated immediately without require or require_dependency calls.
That’s great!