Interesting...So I'd have a method in my Project model that sets the FeaturedProject.
I'll play with this and see how it goes. Thanks! On Feb 18, 2:08 pm, Rob Biedenharn <[email protected]> wrote: > Why not have a: > > class FeaturedProject < ActiveRecord::Base > belongs_to :project > > before_create :only_have_one > validates_associated :project > > def only_have_one > self.class.count < 1 > end > end > > Then you can FeaturedProduct.find(:first) and be sure that there is > only one. No need to mess with the projects when the featured one > changes. However, you might want to do: > > class Project > after_destroy :clean_up_if_featured > > def clean_up_if_featured > fp = FeaturedProject.find(:first) > if fp && fp.project_id == self.id > fp.destroy > else > true > end > end > end > > Although that might be equivalent to: > > class Project > has_one :featured_project, :dependent => :destroy > end > > -Rob > > On Feb 18, 2009, at 12:43 PM, yaphi wrote: > > > > > Hey Maurício, > > > I have a project model. What I'd like to do is set a project to > > "featured" so I can display that on the homepage. By marking a project > > as featured, I'd want all the other projects to automatically have > > their "featured" column set to false. > > > On Feb 17, 8:55 pm, Maurício Linhares <[email protected]> > > wrote: > >> No, there isn't. Maybe you're approaching the problem from the wrong > >> point of view. > > >> Try to explain what is your problem that someone else might give > >> you a > >> better idea. > > >> - > >> Maurício Linhareshttp://alinhavado.wordpress.com/(pt-br) > >> |http://blog.codevader.com/(en) > > >> On Tue, Feb 17, 2009 at 10:13 PM, yaphi <[email protected]> wrote: > > >>> I'm not sure if there is a term for this (which is why I can't find > >>> anything on google) but I want to be able to set one of my models > >>> active, where the rest will be set to inactive. > > >>> I would guess to write a method that sets all the records to > >>> inactive, > >>> then set the selected object to active. That seems like it's pretty > >>> messy though. Is there some sort of built-in functionality with > >>> rails > >>> that will only allow one column to be true at a time? > > Rob Biedenharn http://agileconsultingllc.com > [email protected] --~--~---------~--~----~------------~-------~--~----~ 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 [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

