Hi, I''m struggling with something that must be very common pattern, and want to do it the correct rails/ruby way but am a bit dense ! I have users - an admin user, registered users and a guest user (using ModelSecurity) For many of linked associations I want the admin to be able to list or edit all instances, the registered user only their own one and guest none at all. So somehow I want to over ride or extend the associations, or find, so that the condition is captured in one place and my controller/view code isn''t littered with these same if, else blocks...e.g something like... if(User.current.admin?) Theme.find(:all) elsif(User.current.registered?) User.current.theme else nil end I''ve tried using the Association extensions so I can simply call something like @theme = User.current.theme.find_theme e.g class User < ActiveRecord::Base has_one :theme do def find_theme() if(admin?) Theme.find(:all) elsif(registered?) User.current.theme else [] end end end But no joy, this gives method missing. If I change the association to has_many however, it does work - but this is obviously not then correct with the model. Do extensions only work for has_many ? Any advice on best place or pattern to encapsulate this kind of situation much appreciated. Many thanks tom --~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---