Rails API - 投票应用、协会

Rails API - Voting app, associations

所以,我正在开发一个小型投票应用程序。我正在使用 Rails,但是 JSON API-only。 我想为每次投票创建选民 table - 以便每次投票都有相同的选民(这是针对当地社区的应用程序,其中选民将大部分保持 'static'),但最好有一个'presence list' 每次投票。

我已经创建了控制器 - scoresvoters。现在:

您如何做到始终包含 相同的 选民名单,但存在布尔值?我添加了 voter_presence: boolean,并在路由中添加了类似的东西:

Rails.application.routes.draw do
  resources :scores do
    resources :voters
  end
end

它应该可以解决关联问题 - 但我仍然有一个“每个得分都相同的列表”的问题。

class Score < ActiveRecord::Base
  has_and_belongs_to_many :voters
  attr_accessor :excluded_voter_ids
  after_create :add_voters

  ... other code ...

  def add_voters
    Voter.where().not(id: excluded_voter_ids).find_each do |voter|
      self.voters << voter
    end
  end
end

您还需要按照说明 here 设置 HABTM 协会