On Apr 6, 2012, at 1:40 PM, Patrick J. Collins wrote:

>> On Apr 6, 2012, at 11:21 AM, Patrick J. Collins wrote:
>>> ...  Changing the filename app/admin/users.rb to app/admin/wtfs.rb
>>> 
>>> makes this error go away... so--- wtfs indeed!
> 
> On Fri, 6 Apr 2012, Justin Ko wrote:
>> I'm pretty sure this is an issue with how Rails autoloads things, I've run 
>> into it a few times. Checkout this post:
> 
> Well what doesn't make sense to me, is that I would expect having a file
> called wtfs.rb should give a similar error expecting "Wtfs" to be
> defined...  But it doesn't..

In Ruby, if you define a namespace class without defining the top-level class 
first, you'll get an error:

1.9.3p125 :001 > class Foo::Bar; end
NameError: uninitialized constant Foo
        from (irb):1
        from /Users/justinko/.rvm/rubies/ruby-1.9.3-p125/bin/irb:16:in `<main>'

So as you can see from your backtrace, the error is generating from 
confirmations_controller.rb, which makes sense because it has "class 
Users::ConfirmationsController".

If you look further up the backtrace, you'll see activesupport trying to handle 
that error with its `load_missing_constant` method. I assume it "searched" for 
a file named "users", because the constant was named "Users". WTF doesn't cause 
an error, because activesupport doesn't look for it.

Try renaming your namespace from "Users" to "User", which is a more appropriate 
name IMO.

> 
> Patrick J. Collins
> http://collinatorstudios.com
> _______________________________________________
> rspec-users mailing list
> rspec-users@rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users

_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to