【问题标题】:Send join table column id using jbuilder使用 jbuilder 发送连接表列 id
【发布时间】:2018-09-01 03:55:36
【问题描述】:

我在游戏和服务器之间有一个名为games_servershas_many :through 连接表,我正在尝试为servers 发送id 的数组以获取game,如下所示:

json.servers do
  json.array!(game.servers {|g| g.id})
end

但它会发送整个server 记录,而不仅仅是id。我也尝试了以下方法:

json.servers do
  json.array!(game.servers {|g| json.(g, :id)})
end

但即使这样也会发送整个server 记录。有没有办法让我只发送数组中的server 记录中的id

我可以通过json.array!(game.servers.pluck(:server_id)) 只获取数组中的id,但这会导致N+1 查询问题

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 join has-many-through jbuilder


    【解决方案1】:

    您可以尝试关注以获取ids of server

    game.server_ids
    

    这将是获取关联模型 ID 的最短代码。

    希望这对你有用..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-21
      • 2018-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-10
      • 2022-01-15
      • 1970-01-01
      相关资源
      最近更新 更多