Q: find_by_x_id and named scopes


I have a model Topic that has many Posts, and I'm trying to use a
named scope on my find

I can do something like this:

@posts = @topic.posts.named_scope_func

But I cannot do this:

@posts = Post.find_by_topic_id(1).named_scope_func

The reason is that the "posts" and "find_by_topic_id" seem to return
different classes (Post and Array)

Am I doing something wrong?


Named scopes generate a Class method. Looks like you're trying to
one on an instance of Post (or an array with one Post in it).

Don't know any other way around this other than calling the class
method on Topic.posts.named_scope

Maybe @posts = Post.named_scope.all :conditions => {:topic_id => 1}