On Sat, Mar 19, 2011 at 3:02 PM, Bartek Iwaszkiewicz <
bartek.iwaszkiew...@gmail.com> wrote:

>  W dniu 2011-03-19 20:32, Frederick Cheung pisze:
>
>
>> On 19 Mar 2011, at 17:23, "rails.rookie"<bartek.iwaszkiew...@gmail.com>
>>  wrote:
>>
>>  Hi, i have two models:
>>>
>>> User<...
>>>   has_many :photos, :dependent =>  :destroy
>>>   ...
>>>
>>> Photo<...
>>>   belongs_to :user
>>>   ...
>>>
>>> and I need Attribute model such as each photo has many attributes.
>>> And here I'm not sure whether Attribute should be has_many: photos or
>>> belongs_to :photo.
>>>
>> Can you give some examples of what your attributes are? You probably want
>> to avoid calling the association attributes - that will collide with an
>> internal activerecord method.
>>
>> Fred
>>
> App has to work in this way, user add photo and then add attributes to
> photo on example (Baltic Sea.jpg; sea, water, sand ).
> Then usning Formal concept analysis (not relevant) special paris are
> created {(photo,...,photo n),(attribute,...,attribute n)}
> and it should be remember in some way (i suppose best will be another
> table), because it will be modefied when photo table or
> attribute table will change.
> I can't find out the best way how associations between models should look
> like and how many models i need.
>

You are going to want to do a has_many in the Photo model to PhotoAttribute
model. This will allow you to have the PhotoAttribute model be a list of all
the attributes that a photo can have. From what you explained this sound
like what you wanted to do with that table anyway. Your final models would
look like this:

class User < ActiverRecord::Base
  has_many :photos, :dependent =>  :destroy
end

class Photo < ActiveRecord::Base
  belongs_to :user
  has_many :photo_attributes
end

class PhotoAttribute < ActiveRecord::Base

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to