I have a model that works something like this. I have a User object. Each User has a Profile. Each Profile has a Picture. Well not always. At creation there is no Picture and the user could choose to never set one.
Prior to my latest upgrade of RoR I would use a line like this to check if there was a picture.
if @user.profile.picture.nil?
But when I went to 0.14.1 this started giving me an error, “uninitialized constant Picture”. I define the relationship in the model by saying:
class Picture < ActiveRecord::Base
belongs_to :profile
and in Profile
class Profile < ActiveRecord::Base
belongs_to :user
has_one :picture,
:dependent => :destroy
The addition of the :dependent => :destroy is new to this version. So how do I specify this relationship knowing the picture may not be there? Do I have to not use belongs_to, has_one?
Technorati Tags: Ruby, Ruby on Rails
Hi there. Please do use http://dev.rubyonrails.org to log bug reports so we can deal with them in an organized manner. Oh, and I invite you to try out 0.14.3. Perhaps your bug was already fixed.