Rails coding/design input


#1

Hi,

We have a web app which serves typical social
content(blogs/forums/streams etc).

All the content is optionally marked with a city. I.e. if a blog post is
specific to New York, it will be marked so.

The task is to show only city specific information(all over the site) if
user has set city view preference and show everything to all others.

So I have to add ‘and city == current_city’ if city_specifc_view? to all
my finders in all my model classes, which is a maintenance night
mare(especially as there is a risk of this logic changing).

I am wondering what is the right way to apply this logic. Can I do it a
central place(like overrinding the default find). Is monkey patching an
option.

Thanks


#2

On May 22, 6:29 am, Vivekamn Vv removed_email_address@domain.invalid
wrote:

So I have to add ‘and city == current_city’ if city_specifc_view? to all
my finders in all my model classes, which is a maintenance night
mare(especially as there is a risk of this logic changing).

I am wondering what is the right way to apply this logic. Can I do it a
central place(like overrinding the default find). Is monkey patching an
option.

I think you’d be better off with a named_scope (or possibly
with_scope).

Fred


#3

Possibly use default_scope?

2009/5/22 Frederick C. removed_email_address@domain.invalid