Observers in Sub-directories in Edge Rails

Hello,

I haven't had the opportunity to play with Edge Rails recently, but
upon testing out a new app in it, found that having observers in
sub-directories doesn't work out of the box.

i.e. our app/models folder looks something like:
models/
  - attachment.rb
  - beta_code.rb
  billing/
   - biller.rb
   - coupon.rb
  observers/
   - conversation_observer.rb
   - feed_observer.rb

Putting them in subdirectories was done just to keep things in the
app/models folder somewhat manageable & organized.

Just counted our models, we're now up to 47! (and they said Rails was
only for toy scaffolding apps... =))

So, for example the billing/biller.rb model definition looks like:
class Biller
  ...
end

Not, "Billing::Biller"...

A few questions:

1) Any advice on models directory organization going forward (i.e. for
Edge Rails & Rails 2.0)? (i.e. is our setup going to be OK, or what is
recommended when you have this many models)

2) Is it OK to keep Observers in a subdirectory within app/models?

So this line in environment.rb:
ConversationObserver.instance

Was causing this error:

/ ... long path ...
/activesupport/lib/active_support/dependencies.rb:251:in
`load_missing_constant': uninitialized constant CannedReplyObserver
(NameError)

Not so much worried about that. Should I open a ticket for this or is
it just expected behavior?

Adding this to environment.rb did the trick anyway:
Dir["#{RAILS_ROOT}/app/models/observers/*"].each do |path|
  filename = path.split('/').last.sub('.rb', '')
  require "app/models/observers/#{filename}"
end

Thanks!

Shanti

http://sproutit.com/
http://sablog.com/

I believe this may shed some light on the subject:

http://i.nfectio.us/articles/2006/09/07/autoload-support-for-models-in-subdirectories-removed

Thanks! That did the trick.