On Tuesday, 17 December 2013 02:03:47 UTC-5, Ruby-Forum.com User wrote:
>
> I am using elasticsearch for querying in my application. Lets say there
> are 2 models
>
> Class Topic
> has_many :posts
> and
>
> Class Article
> has_many :comments
>
> I want to do a combined search on both these models and my query looks
> like:
>
> Tire.search [Article, Topic], {:load => {:include => [:posts,
> :comments]}} do |search|
> ...
> end
> This is where I encounter a problem. I get the
>
> Association named comments not found
>
> error. I think this is because Topic model doesn't have the association
> comments and I think the same thing will happen for posts with the
> Article model.
>
> Is there anyway to solve this problem? I was thinking maybe something
> like
>
> :include => ['topic.posts', 'article.comments']
>
>
This does not appear to be possible with the stock Tire gem:
https://github.com/karmi/retire/issues/762
You may want to try applying the changes in that issue. Your example would
look like:
Tire.search [Article, Topic], {:load => { Article =>{ :include =>
:comments}, Topic => { :include => :posts } } } do |search|
--Matt Jones
--
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rubyonrails-talk/8313b644-54ce-446f-9c92-c1417f2a6545%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.