我面临以下问题。我的 game 对象有两个关联的 players ,我们可以看到:

=> game.players.count
2

但是, pluck 方法返回重复值:
=> game.players.pluck :name
["Alice", "Alice", "Bob", "Bob"]
GamePlayer 都扩展了 ActiveRecord::Base 。我完全不知道这里到底发生了什么。

相关 gem :
rails 4.2.8
mysql2 0.3.21

关于可能发生什么的任何线索?提前致谢。

最佳答案

我终于发现 Player 模型有一个 default_scope,其中包括来自 globalize3 gem 的翻译:

default_scope { includes(:translations) }

我删除了默认范围,它开始按预期工作。

关于ruby-on-rails - Pluck 返回重复的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42628711/

10-12 05:14