模块中的类可以预加载吗?

问题描述 投票:1回答:1

我正在使用投票宝石acts_as_votable。这仅仅是为了解释,我的问题不仅仅是一个'关于宝石的问题'。如果你有相同情况的任何例子,但另一个“穿衣” - 没有问题。

用两个词我想加上投票和帖子。但这并不容易,因为Vote类来自模块。所以我只能通过调用ActsAsVotable::Vote来访问它。并做一些类似的事情

@posts = Post.where(user_id: user.id).includes(:vote)

导致错误:

Association named 'vote' was not found on Post; perhaps you misspelled it?

问题:有没有办法从外部模块的类中预加载数据?

ruby-on-rails preload
1个回答
1
投票

这可能会奏效:

@posts = Post.where(user_id: user.id).includes(:votes_for)

资料来源:https://github.com/ryanto/acts_as_votable/blob/599995f7ec5aa0f8a04312768fc956e9003d32d4/lib/acts_as_votable/votable.rb#L38

© www.soinside.com 2019 - 2024. All rights reserved.