Undefined affiliation association method

My code is:

class User < ActiveRecord::Base
    belongs_to :university
end

class University < ActiveRecord::Base
  has_many :users, dependent: :destroy
end

and my User model has the university_id attribute.

If I do University.find(1).users, I get a list of users, but if I do User.find(1).university(and I checked that university_id is not zero here), I get:

NoMethodError: undefined method `university' for #<User:0x00000003859fc8>
from /home/mari/.rvm/gems/ruby-1.9.2-p290/gems/activemodel-3.0.10/lib/active_model/attribute_methods.rb :392:in `method_missing'
from /home/mari/.rvm/gems/ruby-1.9.2-p290/gems/activerecord-3.0.10/lib/active_record/attribute_methods. rb:46:in `method_missing'
from (irb):14
from /home/mari/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.10/lib/rails/commands/console.rb:44:in`start'
from /home/mari/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.10/lib/rails/commands/console.rb:8:in start'
from /home/mari/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.0.10/lib/rails/commands.rb:23:in
`<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'

What am I doing wrong? I have other models and they work perfectly. Any suggestions? thanks in advance

+5
source share
2 answers

I still can not comment, so I will record the answer:

- belongs_to: university User . , User ? , , , , .

+6

User.where("id =?", 1).first.university
+1

All Articles