class Person < ActiveRecord::Base 
  attr_accessible :photo, :name 
  has_many :photos, :as => :attachment, :dependent => :destroy

  # I would do this.  This will save a portrait_id on a person object, 
which is the id of a photo.  This is most efficient because if you put the 
"belongs_to" association on the photo object, you'll end up with many 
photos with nil values for person_id.
  belongs_to :portrait, :class_name => "Photo" 
end 

class Photo < ActiveRecord::Base 
  attr_accessible :file_name, :name 
  belongs_to :attachment, :polymorphic => true
end 



On Wednesday, January 16, 2013 4:36:53 PM UTC-5, Walter Lee Davis wrote:
>
>
> On Jan 16, 2013, at 4:23 PM, Walter Lee Davis wrote: 
>
> > 
> > On Jan 16, 2013, at 4:16 PM, Dave Aronson wrote: 
> > 
> >> On Wed, Jan 16, 2013 at 4:09 PM, Walter Lee Davis 
> >> <wa...@wdstudio.com<javascript:>> 
> wrote: 
> >> 
> >>> I would like to mark one image as being the "portrait" for this 
> person, 
> >> 
> >> I'd suggest adding that a person has_one portrait, class_name: :Image. 
> >> In the UI you can have them select one of their Images (or none). 
> >> 
> >> -Dave 
> > 
> > Does that require me to add another belongs_to to the Image? If I add a 
> has_one, won't I have to balance that on the other side? 
> > 
> > Walter 
>
> Just tried this in my stunt app, and it would require me to add a 
> person_id to the Photo / Image model, which since it's polymorphic, is sort 
> of beside the point. 
>
> Walter 
>
> > 
> >> 
> >> -- 
> >> Dave Aronson, the T. Rex of Codosaurus LLC, 
> >> secret-cleared freelance software developer 
> >> taking contracts in or near NoVa or remote. 
> >> See information at http://www.Codosaur.us/. 
> >> 
> >> -- 
> >> 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 
> >> rubyonra...@googlegroups.com<javascript:>. 
>
> >> To unsubscribe from this group, send email to 
> rubyonrails-ta...@googlegroups.com <javascript:>. 
> >> For more options, visit https://groups.google.com/groups/opt_out. 
> >> 
> >> 
> > 
> > -- 
> > 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 
> > rubyonra...@googlegroups.com<javascript:>. 
>
> > To unsubscribe from this group, send email to 
> rubyonrails-ta...@googlegroups.com <javascript:>. 
> > For more options, visit https://groups.google.com/groups/opt_out. 
> > 
> > 
>
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msg/rubyonrails-talk/-/Due1ZdEDFoIJ.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to