如何通过多个模型引用和更改额外值

我有通过piece_lineup模型加入的阵容和件模型(有很多通过)。 我在piece_lineup模型中添加了一个’status’列,但我无法弄清楚如何引用该属性和/或更改它。 列出与阵容相关联的作品时,我还想列出与该阵容相关的作品的状态。 我怎么做?

获取此专栏非常简单。 添加到您的型号:

has_many :pieces, through: :piece_lineup, select: "pieces.*, piece_lineup.status as status" 

如果必须更改此值,则应创建Lineup#status_for_piece=(piece, status) (作为示例)方法。 查找必要的行和更新状态。

插入不是优雅的方式,但是连接表根本不是经常更新的数据的好地方